PHP preg_replace ich komme nicht weiter

Duergy

Blogger / Progger
ID: 334432
L
20 November 2008
818
16
Halli Hallo

nach 3,5 Stunden gebe ich jetzt auf. ich möchte

[text]

durch den inhalt der variable $text ersetzen

PHP:
$meintext = preg_replace("/[text]/", "$text","$meintext");

ich habe mir etlich sachen zu RegExp usw. angesehen und sehe vor lauter Modifier, Delimiter den Wald nicht mehr.

Der code oben ersetzt mitr alles wo ein buchstabe 't', 'e', 'x', 't' drinne ist durch $text. Ich will aber das er '[text]' ersetzt

Help...
 
Die eckigen Klammern musst du escapen, da sie für etwas anderes stehen.
Ich kenn mich mit RegEx nicht so gut aus, aber das sollte funktionieren.
Code:
!\[text\]!i
oder
Code:
/\[text\]/i
Das i steht dafür, dass die Groß und Klein schreibung ignoriert wird.
 
Für solche Scherzchen brauchst du keinen RegExp. Nimm str_replace(). Einfacher, schneller.

Btw. wieso setzt du überall Anführungszeichen? :hö:
PHP:
// Quark:
$meintext = preg_replace("/[text]/", "$text", "$meintext");
// Wenn, dann so:
$meintext = preg_replace("/[text]/", $text, $meintext);
 
Die Anführungszeichen setze ich aus gewohntheit. in $text ist z.b. auch HTML code drinne nicht das wenn ich es ohne "" mache er irgendwas durcheinander bringt