Hi
Ich habe einen Regex geschrieben, der funktioniert auch ganz gut bei einer Zeile. Wenn das Suchmuster allerdings über mehrere Zeile verteilt ist, wird es nicht gefunden.
Hier mal der Regex:
(das erste (\t*) wird genutzt, um herauszufinden, wieviele Tabulatoren im Code eingerückt werden muss, damit der Quelltext besser aussieht)
Folgende Muster erkennt er:
Was er nicht erkennt ist dieses:
Eigentlich sollte es klappen, da ich ja den Modifier "m" benutze, aber irgendwie tut er doch nicht.
Ich nutze die preg_replace_callback() Funktion zum Aufrufen.
Ich habe einen Regex geschrieben, der funktioniert auch ganz gut bei einer Zeile. Wenn das Suchmuster allerdings über mehrere Zeile verteilt ist, wird es nicht gefunden.
Hier mal der Regex:
Code:
!(\t*)\((\w*)\((.*)\)\)!mi
Folgende Muster erkennt er:
Code:
(fett("das ist ein fetter Text")) (zitat("Ich will (fett("das ist ein fetter Text")) Wildsäue";"Obelix")) (zeit()) (dreier_block(hallo welt;das ist schön;aber egal)) (einer_block("Dies funktioniert weil nur eine Zeile."))
Code:
(einer_block("Dies jedoch funktioniert nicht. Denn es geht über zwei oder mehr Zeilen"))
Eigentlich sollte es klappen, da ich ja den Modifier "m" benutze, aber irgendwie tut er doch nicht.
Ich nutze die preg_replace_callback() Funktion zum Aufrufen.
Kommentar