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 books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.