Python:找到完全匹配

时间:2012-10-25 14:13:32

标签: python regex

我想使用find()找到完全匹配的单词。但是它的接缝find()也返回部分匹配的字符串。

参考stackoverflow String exact match中的先前帖子,使用了以下正则表达式:

   import re

   print(re.findall('\\blocal\\b', "Hello, locally local test local."))
   // ['local', 'local']

问题在于我的情况是“本地的”。与“本地”不同

我该怎么做?

更新

我需要做的是替换包含本地工作的元素。

  print("Hello, locally local test local#".replace('local','we'))
  // should result in 

  Hello, locally we test local#

1 个答案:

答案 0 :(得分:5)

findall如果您要返回的是您要查找的内容列表,则没有任何意义...对于此用例,我不会费心去做,并且只需使用:

'Hello, locally local test local.'.split().count('local')

好的,有关的更新:

  

我需要做的是替换包含本地工作的元素。

我会选择类似的东西:

re.sub(r'\blocal([\b\s])', r'we\1', s)