AndreD: Hilfe zu regulären Ausdrücken

Beitrag lesen

Moin,

Hallo Henryk,
Danke erstmal für die fixe Antwort!

Fällt dir was auf?

Ja, ich dachte mir schon das es so irgendwie nicht wirklich klappen kann :-)

Ein wenig komplexer muß es schon sein. Damit würdest du nämlich "?lang=foo" durch "en" ersetzen.

Soweit war ich gestern schon, heut hats leider auch noch nicht hingehauen! :-)

Du solltest also noch den Teil vor dem zu ersetzenden und den dahinter mit subpatterns einfangen und in einzusetzenden String schreiben:

Hab noch nie was mit subpattern gemacht. Heisst dass, das alles was in () steht ein subpattern ist und diese entsprechend im replacement per \1 fürs erste und \2 fürs zweite einfügen kann?

preg_replace("/(?lang=)[a-z]{2}(&?)/", "\1".$lang."\2",$url)

Danke mal für Dein Beispiel, funktioniert im Augenblick leider noch nicht, ist aber auf jeden Fall eine sehr gute Grundlage um darauf aufzubauen :-)

Gruss
AndreD