[PHP] preg_replace()

M3Y3R

Well-known member
ID: 336361
L
8 Mai 2006
1.608
60
Hallo,

folgendes Problem.

Ich habe ein Makkro ($ARG1$) und dieses soll per preg_replace durch ein leerzeichen erstezt werden.

Wenn ich nun aber das Suchmuster festlege:

Dann bekomme ich folgende Fehlermeldung:
Notice: Undefined variable: ARG2 in functions.php on line 71

Wie bekomme ich das nun hin, dass das Makkro $ARG1$ durch ein Leerzeichen ersetzt wird? wenn ich das ganze in ' schreibe, gibt er mir das Makkro wieder mit aus...

Danke!


MFG
Papenburger
 
Wieso reguläre Ausdrücke, wenn du sie nicht brauchst? :hö:
PHP:
$foo = str_replace('$ARG1$', ' ', $foo);
 
Wieso reguläre Ausdrücke, wenn du sie nicht brauchst? :hö:
PHP:
$foo = str_replace('$ARG1$', ' ', $foo);

Doch brauche ich. Es gibt unterschiedlich viele Makkros. Angefangen von $ARG1$ bis hin zu $ARG9$ und noch weiter....

Ich möchte ja nicht jedes einzelne Makkro abfragen!


MFG
Papenurger
 
Dein regulärer Ausdruck oben matcht aber nur auf ein einziges Makro.

Du brauchst dann sowas:
PHP:
$foo = preg_replace('/\$ARG\d+\$/', ' ', $foo);
Ungetestet, müsste es aber tun.

edit:
Drum hat der oben auch nicht hingehauen. Du musst das Dollarzeichen escapen.