Java正则表达式,找到某个符号时如何停止匹配
我最近喜欢上了regex。有件事真的很困扰我
如果后面没有特定符号,如何将我的正则表达式设置为仅匹配某些单词。 例如 假设我有一篇包含一些普通单词的文本,以及一些以大写字母结尾的单词。如果一个单词后面没有大写字母,我怎么才能让我的正则表达式检测到这个单词呢
Just some sample texT with wordS. ThiS should be Matched.
从这里我希望我的reggex匹配所有的单词,除了“texT,words和this”
提前感谢您的帮助:)
# 1 楼答案
你可以用几种方法来做。可以涉及word boundaries ^{}
\b
只能匹配因此,为了确保我们匹配整个单词,我们可以用类似
\b
的\b\w+\b
包围\w+
现在,为了确保您找到的单词不以大写字母结尾,我们可以简单地要求最后一个字符应该是小写的(范围为
a-z
)所以我们可以将正则表达式重写为
\b\w+[a-z]\b