Gå til innhold

strpos finner ikke mine punktum


Anbefalte innlegg

Videoannonse
Annonse

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 ?

Lenke til kommentar

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 :cry:

Endret av fjartan
Lenke til kommentar

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 av kakkle
Lenke til kommentar

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...