V5R1X Skrevet 5. oktober 2009 Del Skrevet 5. oktober 2009 Er det noen som kan hjelpe meg med å finne (eventuelt lage) et skript som tar en string og deler denne ved en gitt string i en annen string. Klarer ikke å finne en "native" funksjon som hjelper meg med å gjøre det jeg ønsker. Eksempel på hva jeg vil ha: String1 = "Jeg har en rød bil" String2 = "har " String3 = "" String3 = delString(String1, String2) String3 er nå "en rød bil" Er ikke så dreven i PHP så det hadde vært fint hvis noen kunne ha hjulpet meg. Lenke til kommentar
TheRealL Skrevet 5. oktober 2009 Del Skrevet 5. oktober 2009 Dette er utrolig enkelt egentlig. Du bruker bare php funksjonen explode. Eksempel til dette sånn at du får akkurat den verdien du vil ha. <?php // Variablene $var1 = "Jeg har en rød bil"; $var2 = "har"; // Her "eksploderer" vi $var1 mellom $var2 $var3 = explode($var2,$var1); /* Dette etterlater oss da med følgende: Array ( [0] => Jeg [1] => en rød bil ) */ // Da tar vi rett og slett og bruker $var[3]. // Men for at vi skal slippe det ekstra mellomrommet så bruker vi // substr( $string , 1 ); $var3 = substr($var3[1],1); echo $var3; // Output: en rød bil ?> -------------------------------------- Korte versionen uten comments: <?php $var1 = "Jeg har en rød bil"; $var2 = "har"; $var3 = substr(explode($var2,$var1),1); echo $var3; ?> Lenke til kommentar
xibriz Skrevet 9. oktober 2009 Del Skrevet 9. oktober 2009 (endret) $String1 = "Jeg har en rød bil"; $String2 = "har "; $String3 = ""; echo str_replace($String2, "", strstr($String1, $String2)); Endret 9. oktober 2009 av xibriz Lenke til kommentar
BlueEAGLE Skrevet 10. oktober 2009 Del Skrevet 10. oktober 2009 Hva vil du skal skje hvis $string1 = "Det er jeg som har den røde bilen jeg har"; $string2 = "jeg "; Vil du da at $string3 skal inneholde "som har den røde bilen jeg har", "har", array("som har den røde bilen", "har") eller array("som har den røde bilen jeg har", "har")? Lenke til kommentar
Ernie Skrevet 10. oktober 2009 Del Skrevet 10. oktober 2009 Det spørs jo litt hva alternative strenger inneholder, men skulle et slikt scenario inntreffe vil jo ingen av de løsningene over fungere. Denne vil nok isåfall fungere atskillig bedre: $string1 = "Det er jeg som har den røde bilen jeg har"; $string2 = "jeg "; $string3 = substr(strstr($string1, $string2), strlen($string2)); Kort fortalt tar den $string1, fjerner alt før første tilfellet av $string2 (som er hva strstr gjør), og henter så fra og med tegnet etter $string2 og ut (strlen + substr). 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å