Tom: Reguläre Ausdrücke

Beitrag lesen

Hello,

ich suche ein Muster. Das kann folgendermaßen aussehen

<!--{F-filetime(-10)}-->
   <!--{T-mainmenu}-->
   <!--{L-self}-->

und habe dafür

//              1     2     3        4        5   6   7       7       8   9
    $pattern = '=^(.*?)(<!--{)(.*?)(L-|M-|F-|T-)(.*?)(((.*?)))?([^}]*?)(}-->)(.*$)=msi';

als Pattern aufgebaut, was aber augenscheinlich falsch ist.

Als Rückgabewerte benötige ich z.B.

<!--{F-filetime(-10)}-->
      1    2      3

1 Kennung  ggf. auch ohne den Bindestrich
2 Bezeichner
3 Argumente aus der Klammer, sofern die Klammer vorhanden ist

Wie muss man das nun angeben, dass
a. eine Gruppe von Zeichen {0,1} mal vorhanden sein darf und
b. wenn sie vorhanden ist, ein Suchmuster _enthält_ ?

Da komm ich irgendwie noch nicht weiter...

Harzliche Grüße vom Berg
esst mehr http://www.harte-harzer.de

Tom

--
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau