Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich reguläre Ausdrücke verwenden, um ganze Wörter in einer Zeichenfolge abzugleichen?

Wie kann ich reguläre Ausdrücke verwenden, um ganze Wörter in einer Zeichenfolge abzugleichen?

Barbara Streisand
Barbara StreisandOriginal
2024-11-23 07:39:10777Durchsuche

How Can I Use Regular Expressions to Match Whole Words in a String?

Ein ganzes Wort in einer Zeichenfolge mit dynamischem Regex abgleichen

Die Aufgabe, ein ganzes Wort in einer Zeichenfolge abzugleichen, kann mit Regex gelöst werden. Allerdings kann das Erstellen mehrerer Übereinstimmungsausdrücke für verschiedene Wortpositionen mühsam sein. Dieser Artikel befasst sich mit einer prägnanten Lösung mithilfe von Wortgrenzen.

Verwendung von Wortgrenzen

Wortgrenzen, gekennzeichnet mit b, geben den Anfang oder das Ende eines Wortes an. Indem wir b in das Regex-Muster integrieren, können wir Wörter finden, die von Nicht-Wort-Zeichen umgeben sind. Der folgende Code demonstriert dies:

match_string = r'\b' + word + r'\b'
# Or Python 3.7+ only versions:
match_string = r'\b{}\b'.format(word)
match_string = rf'\b{word}\b'

Dieses Regex-Muster sucht nach „Wort“ als ganzes Wort, unabhängig von seiner Position in der Zeichenfolge.

Übereinstimmung mit mehreren Wörtern

Wenn mehrere Wörter als ganze Wörter abgeglichen werden müssen, können wir eine Liste von Wörtern verwenden und ein Muster erstellen wie Dies:

match_string = r'\b(?:{})\b'.format('|'.join(words))
# Or Python 3.7+ only version:
match_string = rf'\b(?:{"|".join(words)})\b'

In diesem Muster werden die Wörter in eine nicht erfassende Gruppe eingeschlossen, um sicherzustellen, dass nur ganze Wörter gefunden werden.

Überlegungen zu Grenzen

Wenn die abzugleichenden „Wörter“ Sonderzeichen enthalten, müssen diese mit Escapezeichen versehen werden, bevor sie im Regex-Muster verwendet werden können re.escape().

Für Wörter, die mit Sonderzeichen beginnen oder enden, sollten eindeutige Wortgrenzen (?

Zusammenfassend lässt sich sagen, dass die Verwendung von Wortgrenzen eine praktische Lösung darstellt Möglichkeit, ganze Wörter in einer Zeichenfolge zuzuordnen, wodurch die Notwendigkeit mehrerer Übereinstimmungsausdrücke basierend auf der Wortposition entfällt.

Das obige ist der detaillierte Inhalt vonWie kann ich reguläre Ausdrücke verwenden, um ganze Wörter in einer Zeichenfolge abzugleichen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn