2015-02-09 74 views
0

我有以下文本"The other one there, the blithe one."我想写一个正则表达式来匹配"The""the"的出现次数。我的解决方案是[^A-za-z][Tt]he[^A-za-z]。当我将这个输入到在线正则表达式工具中时,我只能在“the”上找到匹配。我的代码是正确还是不正确?如果不正确,找到文本中"The""the"的匹配项的解决方案是什么。提前感谢您提供任何解决方案,建议或解释。正文中的“The”或“the”正则表达式“The other one there,the blithe one”。

回答

4

你可以使用这个表达式:

\b[Tt]he\b 

这里,\b指示文字边界。

Online demo

3

没有与正则表达式匹配整个单词的一个更好的方式 - 你可以用“单词边界”锚,像这样:

\b[Tt]he\b 

你的正则表达式是不正确的,因为它不会匹配The在输入的开头或结尾,其中[^A-za-z]表达式与匹配Thethe的部分之前没有任何匹配。另一方面,词边界锚是“零宽度”(即它们不捕获任何东西),这允许在输入的开始或结束时匹配表达式。