• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

zeichenketten-op

afoeder

New member
Hallo!

Ich habe einen String mit evtl. mehreren gleichen Worten:

"Dies ist ein Test ist ein Test das ist wahr das ist toll".

Jetzt taucht da 4x "ist" auf (wenn ich mich nicht verzählt habe ;-))
Ich möchte das ERSTE "ist" durch einen anderen String ersetzen, die anderen sollen "ist" bleiben. Sonst könnte ich das ja mit str_replace oder so machen.

Wie kriege ich das gebacken?
Ich kann zwar mit "substr" (glaube ich) das erste Vorkommen von "ist" auffinden, wie ersetze ich es dann aber?

Danke,

adrian
 
splitte doch deinen string nach jedem leerzeichen. geht mit strtok.
und ersetze dann dein erstes 'ist' durch was anderes.
danach alles wieder zu einen string zusammenfügen.
 
du meinst in ein Array splitten?
wie finde ich dann das erste Array, das "ist" lautet?


ich habe nun eine andere Lösung gefunden:
ich habe mit
arrText = split(...)
nach "ist" aufgelöst.

dann mit
arrText[0] = "ErsatzfürIst";
wieder zusammengeführt.
das ging aber nicht mit implode(), sondern ich habe mit einer for-schleife die Dinger manuell zusammengefügt und bewirkt, das beim ersten Array kein "ist" mehr eingefügt wird.

so geht's...



Danke,
adrian
 
der vollständigkeithalber:

$i = 0;
$tok = strtok ($deinstring," "); //string splitten nach jedem leerzeichen

while ($tok)
{
$word[$i] = $tok;
$i++;
$tok = strtok (" ");
}
 
Zurück
Oben