Gilbert Skrevet 26. september 2004 Skrevet 26. september 2004 Strpos finner ikke punktumene mine. <?php $strpos = strpos("$text",'.',3); substr($text,0,$strpos) ?> All tekst blir kuttet etter bare 1. punktum, og det er vel ikke riktig?
kakkle Skrevet 26. september 2004 Skrevet 26. september 2004 Det blir riktig det... strpos("$text", '.', 3) - Leter etter det første punktumet fra det tredje tegnet. Returnerer posisjonen til tegnet.' substr($text, 0, $strpos) - Returnerer strengen fra tegn 0 til og med det første punktumet. Derfor blir det riktig at all tekst etter det første punktumet blir kuttet. Men det er vel neppe det du vil ?
Gilbert Skrevet 26. september 2004 Forfatter Skrevet 26. september 2004 (endret) kult... i den forstand at jeg lærte noe nytt Du har rett, jeg vil gjerne plukke ut de tre første setningene, og tenkte det var naturlig å lete etter punktum nr tre. Hvordan skal jeg nå løse dette? edit: fant på en non-proff-måte, $strpos = strpos($text,'. ',0); $strpos = strpos($text,'. ',$strpos)+1; $strpos = strpos($text,'. ',$strpos)+1; $strpos = strpos($text,'. ',$strpos)+1; du verden Endret 26. september 2004 av fjartan
kakkle Skrevet 27. september 2004 Skrevet 27. september 2004 (endret) evt.: <? $str = "Dette er setning 1. Dette er setning 2. Dette er setning 3. Dette er setning 4. Dette er setning 5. Dette er setning 6. "; $teller = 0; $pos = 0; $nystr= ""; while ($teller < 3) { if(strpos($str, ".", $pos)) { $pos = strpos($str, ".", $pos)+1; $teller ++; } else { $teller = 3; } } $nystr .= substr($str, 0, $pos); print "$str<br>$nystr"; ?> Ikkje så veldig kort kode dette heller, kan være det finnes en mye enklere måte, da... EDIT: Det forutsetter egentlig at ingen bruker ... etter hverandre, som jeg har en tendens til å gjøre ofte... :-) Endret 27. september 2004 av kakkle
Torbjørn Skrevet 27. september 2004 Skrevet 27. september 2004 hofteskyting, test gjerne en runde eller to: $kuttet_tekst = preg_replace("/^(.*\..*\..*\.)/","$1",$lang_tekst);
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å