variabler Replace

EM-Autotechnik

Erfahrenes Mitglied
Hi Leute,

möchte in einer Function bestimmte zeichen in einem String ersetzen.

'normalerweise' sollte man das ja so machen:
$str = preg_replace("/\?\", "x", $str);
hier werden alle ? durch ein x ersetzt.

nun soll das zu ersetzende Zeichen aber variable sein.
bringt mir hier einen 'Demiter'- Fehler:

$str = preg_replace($zeichen, $schluessel, $str);

liegt an den fehlenden Slashes...
ich habe nur leider keine Ahnung, wie ich die korrekt einbinde, dass kein Syntaxfehler entsteht...
Wäre für Eure Hilfe sehr dankbar!

PS: $str = preg_replace("/\".$zeichen."\\", $schluessel, $str); <- geht nicht

MfG Sebastian
 
wie wärs damit ?:
preg_replace("/".$zeichen."\\", $schluessel, $str);

du escapest doch das anführungszeichen, dann stimmt doch alles nimma ;)
 
Wenn du eh nur einfache Zeichen verwenden willst, dann nimm str_replace, das ist auf jeden Fall schneller!

PHP:
$repl = str_replace('?', 'x', $string);
$repl = str_replace($zeichen, $schluessel, $string);
 
Original geschrieben von Hatachy
wie wärs damit ?:
preg_replace("/".$zeichen."\\", $schluessel, $str);


Obwohl hier ebenfalls der Delimiter fehlen würde :

Also nicht "/".$zeichen."\\" sondern bitte "/".$zeichen."/" .
Delimiter müssen am Anfang und am Ende gleich sein, sonst
bekommt ihr von der RegEx Maschine Ärger.
 
Zurück