Sven: Erste RegEx-Versuche (:

Beitrag lesen

Merci!

$pattern = "/.*=+ SUCHWORT =+(.*?)=+.*=+.*/s";

Das Funktioniert wunderbar, BIS AUF 2 kleine Ausnamen:

=== SUCHWORT ===
Inhalt

=== Bla ===

Bei dem Beispiel wird Inhalt nicht erfasst. Bei folgendem jedoch schon:

=== SUCHWORT ===

Inhalt

=== Bla ===

Ich habe keine Ahnung wie ich das hinbekommen kann, denn dafür habe ich doch .* mit /s genutzt oder?

Zum anderen Funktioniert obiges Pattern natürlich auch nicht wenn === SUCHWORT === die letzte Überschrift ist, also danach nurnoch Inhalt kommt.

Um das zu beheben hatte ich an ein Verhalten ala suche erst nach weiteren == Iwas == und danach nach .*

Mit der | Pipe kann man ja auch oder setzen, wie setze ich aber so einen langen Ausdruck um? [=+.*=+.*|.*] wirft Syntaxfehler.