magikern Skrevet 17. april 2003 Del Skrevet 17. april 2003 jeg får ikke denne linja til å fungere: $text = ereg_replace("-", "<br />rn-", $text); poenget er at jeg har en tekst som inneholder en "-" og jeg vil at den skal skal deles så det starter på en ny linje før "-". Lenke til kommentar
Neo Skrevet 17. april 2003 Del Skrevet 17. april 2003 Det blir ofte noe krøll dersom man dytter inn mange og / inn i ereg_replace. Prøv dette: $find = "-"; $replace = "<br />rn-"; $text = ereg_replace($find,$replace,$text); Kan ikke garantere at det funker, men det er verdt et forsøk. Lenke til kommentar
magikern Skrevet 17. april 2003 Forfatter Del Skrevet 17. april 2003 takk takk, fungerte det, men jeg fant ut at jeg måtte få den til å bare endre første gang tegnet ble funnet så jeg måtte legge til litt og da fant jeg "strrchr" $find = "-"; $replace = "<br />rn-"; $text = ereg_replace($find,$replace,$text); $strrchrfind = strrchr($text, "$replace"); $text = ereg_replace($strrchrfind,"-",$text); hadde kanskje gått raskere hvis den på for hånd vet at den bare skal endre første gang den finner noe, men dette går ihvertfall fort nok for meg. Lenke til kommentar
diskvask Skrevet 17. april 2003 Del Skrevet 17. april 2003 Det er overkill å bruke regex til en så liten oppgave; finn første "-" med strpos() og bruk substr() til å fiske ut tekst foran og bak posisjonen til "-". Lenke til kommentar
kilogram Skrevet 17. april 2003 Del Skrevet 17. april 2003 Denne oppgåva er str_replace bedre egna til enn ereg_replace. $find = "-"; $replace = "<br />rn-"; $text = str_replace($find, $replace, $text); Denne koden vil eksekvere mykje raskare enn eit tilsvarande ereg_replace-kall... Lenke til kommentar
magikern Skrevet 18. april 2003 Forfatter Del Skrevet 18. april 2003 takk for alle sammen, men jeg har en litt kanskje hardere nøtt på lager, hvis stringen inneholder dette tegnet flere ganger og jeg bare vil at den skal lete etter og endre nest siste gang tegnet blir funnet. hvis det vises en gang skal den endre første gang (altså eneste). hvis det vises to ganger skal den endre første av de to. hvis det vises fler enn 2 ganger skal den bare endre den som er nestsist. Lenke til kommentar
diskvask Skrevet 18. april 2003 Del Skrevet 18. april 2003 http://www.php.net/manual/en/ref.strings.php Sjekk charpos() under user contributed notes, eller lag din egen funksjon som finner posisjonen il alle forekomster av det tegnet du søker etter. Når du så vet hvor mange det finnes er det bare å bruke strpos/substr til å erstatte det du vil. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå