. при использовании регулярных выражений для поиска совпадений в строке крайне важно убедиться, что только все слово сопоставлено. Рассмотрим задачу сопоставления конкретных слов, таких как «обувь», «рубашка» и «брюки» в строках содержания. ]
Первоначально можно подумать, что следующего регулярного выражения достаточно:]
regex.match (content, ключевые слова "\\ s", regexoptions.singleline | regexoptions.ignorecase)
Regex.Match(content, keywords "\\s ", RegexOptions.Singleline | RegexOptions.IgnoreCase)
Решение: Word Boundaries
]] , чтобы решить эту проблему, символ границы слова (\ b) должен быть включен в регулярное выражение. Границы слов - это невидимые символы, которые отмечают начало и конец слова. Используя границы слов, регулярные выражения теперь соответствуют только полным словам: ]
regex.match (content, @"\ b (обувь | рубашка | Pants) \ b");
]
Новая строка регулярного выражения ищет любое слово, которое начинается и заканчивается границами слов. Это гарантирует, что найдены только точные совпадения для указанного слова. Дополнительный символ «@» в начале строки означает, что строку следует рассматривать как строку слова за словом, предотвращая интерпретацию специальных символов как метахарактеров.
]
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3