Heim >Backend-Entwicklung >C++ >Wie kann ich ganze Wörter nur mit regulären Ausdrücken in C# abgleichen?

Wie kann ich ganze Wörter nur mit regulären Ausdrücken in C# abgleichen?

Barbara Streisand
Barbara StreisandOriginal
2025-01-22 20:17:12346Durchsuche

How Can I Match Whole Words Only Using Regular Expressions in C#?

Genaue Übereinstimmung vollständiger Wörter mit regulären C#-Ausdrücken

In C# werden reguläre Ausdrücke häufig verwendet, um bestimmte Muster im Text zu finden. Beim Versuch, vollständige Wörter zu finden, muss jedoch darauf geachtet werden, dass keine Teilwörter gefunden werden.

Angenommen, Sie müssen die Wörter „Schuhe“, „Hemd“ oder „Hose“ in einem Text finden:

<code>string keywords = "(shoes|shirt|pants)";</code>

Es scheint einfach zu sein, die Regex.Match-Methode zu verwenden:

<code>if (Regex.Match(content, keywords + "\s+", 
  RegexOptions.Singleline | RegexOptions.IgnoreCase).Success)
{
    //匹配
}</code>

Dieser Ausdruck findet jedoch auch Wörter wie „participants“, da er „pants“ als teilweise Übereinstimmung innerhalb eines größeren Worts behandelt. Um dieses Problem zu lösen, müssen wir vollständige Wörter explizit zuordnen.

Lösung: Wortgrenzen verwenden

Wortgrenzen in regulären Ausdrücken werden durch die Zeichen b dargestellt. Durch das Hinzufügen von Wortgrenzen zum regulären Ausdruck können Sie sicherstellen, dass nur exakt übereinstimmende Wörter erkannt werden:

<code>Regex.Match(content, @"\b(shoes|shirt|pants)\b");</code>

Aktualisierter Code

Hier ist der aktualisierte Code, um Wörter basierend auf Ihren Kriterien korrekt zuzuordnen:

<code>string keywords = "(shoes|shirt|pants)";
if (Regex.Match(content, @"\b(shoes|shirt|pants)\b").Success)
{
    //匹配
}</code>

Mit dieser Änderung werden nur die drei vollständigen Wörter „Schuhe“, „Shirt“ und „Hose“ als Übereinstimmungen betrachtet, um die Genauigkeit des Zuordnungsvorgangs sicherzustellen.

Das obige ist der detaillierte Inhalt vonWie kann ich 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!

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