2.16 Etwas auf Übereinstimmung prüfen, ohne es dem Gesamtergebnis hinzuzufügen

Problem

Finden eines beliebigen Worts, das zwischen einem Paar HTML-Bold-Tags steht, ohne die Tags in das Regex-Suchergebnis mit aufzunehmen. Wenn der Text zum Beispiel Meine <b>Katze</b> ist flauschig lautet, soll als Ergebnis nur Katze herauskommen.

Lösung

(?<=<b>)\w+(?=</b>)
  • Regex-Optionen: Groß-/Kleinschreibung wird ignoriert

  • Regex-Varianten: .NET, Java, PCRE, Perl, Python, Ruby 1.9

JavaScript und Ruby 1.8 unterstützen das Lookahead (?=</b>), aber nicht das Lookbehind (?<=<b>).

Diskussion

Lookaround

Die vier Arten von Lookaround-Gruppen, die von modernen Regex-Varianten angeboten werden, haben die gemeinsame Eigenschaft, den Text wieder aufzugeben, der von dem Regex-Teil ...

Get Reguläre Ausdrücke Kochbuch now with the O’Reilly learning platform.

O’Reilly members experience live online training, plus books, videos, and digital content from nearly 200 publishers.