Heim >Backend-Entwicklung >C++ >Wie kann man ganze Wörter nur mit regulären Ausdrücken in C# abgleichen?
C#-regulärer Ausdruck, vollständige Wortübereinstimmung
In C# ist es sehr üblich, reguläre Ausdrücke zu verwenden, um bestimmte Wörter in einer bestimmten Zeichenfolge zu finden. Allerdings kann es eine Herausforderung sein, sicherzustellen, dass nur ganze Wörter gefunden werden.
Frage:
Wenn Sie versuchen, Wörter wie „Schuhe“, „Hemd“ oder „Hose“ mit dem Regex-Schlüsselwort s
zuzuordnen, werden versehentlich Wörter wie „Teilnehmer“ gefunden. Dies liegt daran, dass reguläre Ausdrücke über keinen Mechanismus zur Unterscheidung zwischen Wörtern und Teilzeichenfolgen verfügen.
Lösung:
Um dieses Problem zu lösen, müssen Worttrennzeichen (b
) in den regulären Ausdruck eingebaut werden. Worttrennzeichen markieren den Anfang und das Ende von Wortgrenzen und stellen sicher, dass eine Übereinstimmung nur dann erfolgt, wenn das Zielwort ein vollständiges Wort und kein Teil eines größeren Begriffs ist.
Codekorrektur:
Der aktualisierte reguläre Ausdruck, der Worttrennzeichen enthält, ist:
<code>\b(shoes|shirt|pants)\b</code>
Im C#-Code:
<code class="language-csharp">Regex.Match(content, @"\b(shoes|shirt|pants)\b");</code>
Mit diesem festen regulären Ausdruck werden nur Wörter erkannt, die genau mit „Schuhe“, „Shirt“ oder „Hose“ übereinstimmen, wodurch falsche Übereinstimmungen wie „Teilnehmer“ verhindert werden.
Das obige ist der detaillierte Inhalt vonWie kann man ganze Wörter nur mit regulären Ausdrücken in C# abgleichen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!