bestimmter string replace
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
-
also es soll von einem anfangs "wort" bist zu einem "endwort" alles ersetzt werden auch die keyw?rter selbst.
z.B.
wort1 text texttext...wort2
der text dazwischen ist immer anders...
geht denn sowas
thx im vorhinein -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Meine Idee ist, die Anfangsposition und die Endposition des zu ersetzenen Teils zu ermitteln und dann den Substring praktisch zu ersetzen:
$string=" Ich mag blau, gr?n wei?, gelb, lila, grau und rot."; $Anfangswort="blau"; $Endwort="rot"; $anfang=strpos($string, $Anfangswort); $lang=strpos($string,$Endwort)+strlen($Endwort)-$anfang; $ZuErsetzen=substr($string,$anfang,$lang); echo str_replace($ZuErsetzen,"viele Farben",$string);
-
simico schrieb:
Meine Idee ist, die Anfangsposition und die Endposition des zu ersetzenen Teils zu ermitteln und dann den Substring praktisch zu ersetzen:
$string=' Ich mag blau, gr?n wei?, gelb, lila, grau und rot.'; $Anfangswort='blau'; $Endwort='rot'; $anfang=strpos($string, $Anfangswort); $lang=strpos($string,$Endwort)+strlen($Endwort)-$anfang; $ZuErsetzen=substr($string,$anfang,$lang); echo str_replace($ZuErsetzen,'viele Farben',$string);
omG
Ich w?rde das ganze mit einem pregreplace() machen^^
mit dem kann man auch BBcodes machen:
[ code] [/code]
Ist doch eigentlich genau das, was du duchst, oder?
bei n?herem:
http://php.net->in der functionlist preg_replace() suchen. -
das ist ja mal was der erste beitrag schon ein treffer...
danke
benutzernaemelchen schrieb:
Ich w?rde das ganze mit einem pregreplace() machen^^
nein ich glaub mit pregreplace() geht das nicht... man muss ja. das anfangswort und die l?nge die gek?rzt werden soll angeben <-- soweit ich weis...
hab ja vorher auch nach einer funktion gesucht...
also dank nochmal -
Red keinen Mist! Les dir ieber die Befehlsreferenz durch. -_-
Mit preg_replace l?sst sich ganz einfach ein BB-Code erstellen. Der [ b]* code zum Beispiel:
preg_replace("'\[b\](.*?)\[/b\]'i", "<b>\\1</b>", $string);
Ersetzt
[ b](Alles zwischen [ b] und [/ b])[/ b]
Durch
<b>(Alles zwischen [ b] und [/ b])</b>
So eifnach ist das. -_- Und wenn du dir die Befehlsreferenz durchguckst wist du das auch ganz eifnach selbst machen k?nnen was du willst -_-
_______________________________________________
*[ b] weil Lima sonst ein DICKES Wort daraus machen w?rde. ;) Also einfach die Leerzeichen wegdenken. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage