Forum: Programmieren allgemein
by Khabarakh,
27. Okt 2007
Huppsala, hab es nur mit deinem Beispielproblem ohne Attribute getestet. Im Attributsteil ist ja noch einmal ein greedy Stern, der dann alles bis zum allerletzten ">blablabl</tag>" frisst. Also zwei *?:
<(?<tag>suchmaschine)(=.*?)?>(.*?)</(\k<tag>)>
Matcht
<suchmaschine>Suchbegriff(e)</suchmaschine>
<suchmaschine=Suchbegriff(e)>Text für Beitrag</suchmaschine>...
Forum: Programmieren allgemein
by Khabarakh,
26. Okt 2007
Hab mir nicht die ganzen Beiträge davor durchgelesen, eine vereinfachte Version deines Regexes läuft bei mir jedenfalls durch:
<(?<tag>google)(=(.*))?>(.*?)</(\k<tag>)>
Das Problem war der greedy *-Operator zwischen den Tags ("(.*?").