Michi: RegEx schreiben lernen

Beitrag lesen

Hallo,

ich versuche RegEx zu lernen, bzw. meine doch bescheidenen RegEx-Kenntnisse etwas zu verbessern. Nun habe ich das Tutorial von regenechsen.de durchgearbeitet und kann kann im großen und ganzen alle Beispiele und Übungen auch nachvollziehen. Als Übung versuche ich jetzt eine RegEx zu schreiben, die Attributwerte ohne Anführungszeichen innerhalb von HTML-Tags treffen soll.
Nun habe ich eine RegEx, die (einigermaßen korrekt) alle Attributwerte trifft und komme ab hier jedoch einfach nicht weiter.
Hier mal was ich bisher habe:
RegEx: (?:((?<==)[a-zA-Z0-9\_-[]]+))
Teststring: <div class=foo id="bar"><span class=foo id=bar>nix=bar und nix=bar</span>foobar</div>

Das trifft jetzt mal (mit global-flag) alle Attributwerte, leider aber auch diejenigen, die zwischen den Tags vorkommen.

Wie muss ich jetzt weitermachen, dass zwischen den Tags nichts mehr getroffen wird?

Mein Ansatz wäre jetzt gewesen, das mit einem Ausdruck zu kombinieren, der nur Treffer innerhalb von Tags liefert also z.B.:
((</?)(\w+)([^>]*?>))

Nur bekomme ich die Kombination nicht hin. Probiert habe ich Subpatternmatching nach der Art:
((</?)(\w+)([^>]*?>))\1(?:((?<==)[a-zA-Z0-9\-[]]+))
oder konditionales Matching nach der Art:
(?(</?)(\w+)([^>]*?>)(?:((?<==)[a-zA-Z0-9\
-[]]+)))

Aber das zeigt mir im RegEx Coach, in dem ich die Exen probiere keine Treffer.

Danke vielmals für Eure Hilfe und viele Grüße

Michi