在C#中使用正則表達式匹配整個單詞
在使用正則表達式查找字符串中的匹配項時,確保只匹配整個單詞至關重要。考慮一下在內容字符串中匹配諸如“shoes”、“shirt”和“pants”等特定單詞的任務。
最初,人們可能會認為以下正則表達式就足夠了:
Regex.Match(content, keywords "\\s ", RegexOptions.Singleline | RegexOptions.IgnoreCase)
但是,此正則表達式匹配諸如“participants”之類的單詞,這些單詞包含所需的單詞“pants”,但它們本身並非完整的單詞。
解決方案:單詞邊界
為了解決這個問題,必須在正則表達式中包含單詞邊界字符(\b)。單詞邊界是標記單詞開頭和結尾的不可見字符。通過使用單詞邊界,正則表達式現在只匹配完整的單詞:
Regex.Match(content, @"\b(shoes|shirt|pants)\b");
新的正則表達式字符串搜索任何以單詞邊界開頭和結尾的單詞。這確保只找到指定單詞的確切匹配項。字符串開頭的附加“@”字符表示該字符串應被視為逐字字符串,防止特殊字符被解釋為元字符。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3