Я пытаюсь написать java-программу, которая будет искать конкретные слова в строке. У меня он работает по большей части, но он, похоже, не соответствует, если совпадение слова - это первое или последнее слово в строке. Вот пример:Регулярное выражение, не соответствующее первому и последнему слову строки
"trying to find the first word".matches(".*[^a-z]find[^a-z].*") //returns true
"trying to find the first word".matches(".*[^a-z]trying[^a-z].*") //returns false
"trying to find the first word".matches(".*[^a-z]word[^a-z].*") //returns false
Любая идея, как сделать это соответствие любому слову в строке?
Спасибо заранее,
Craig
'\ bWORD \ b' как' \ b' является якорем «границы слова». Соответствующее чтение: http://www.regular-expressions.info/wordboundaries.html – CollinD
любая причина, по которой вы не просто используете 'String.contains (String)'? – showp1984
им не используется, потому что я не хочу находить слова внутри других (т. Е. Если im ищет ожог, сожженный будет правдой) Я попытался положить \ b, но он, похоже, не работает. – craigtb