seth_not@home: preg_match_all - Fehler in Expression (PHP)?!

Beitrag lesen

gudn tach!

Hier der Code...
preg_match_all("#{if[start]}(.*?){if[ende]#", $String, $Array);

nach { muß die Anzahl der gewünschten Vorkommen stehen, also #{1} für genau eins, #{,7} für maximal 7, #{2,4} für 2 bis 4 #-Zeichen.

nein.
1. # ist hier delimiter
2. php denkt hier mit und versteht die braces hier literal.

zu 2.: ich weiss allerdings nicht, ob dies vor php 5.2 auch schon so war.

Wenn Du ein explizites { suchen willst, mußt Du es wie die [] escapen.

noe, muss man nicht. und man muss noch nicht mal immer die brackets escapen.

der regexp '#{if[start]}(.*?){if[ende]}#s'
macht das gleiche wie '/{if[start]}(.*?){if[ende]}/s'

prost
seth