字符串完全匹配

Lal*_*tar 17 python string

我有一个字符串,其中"LOCAL"一词多次出现.我使用该find()函数来搜索这个单词,但它也返回另一个单词"Locally".我怎样才能准确匹配"本地"一词?

Vin*_*ard 42

对于这种事情,regexp非常有用:

import re

print(re.findall('\\blocal\\b', "Hello, locally local test local."))
// ['local', 'local']
Run Code Online (Sandbox Code Playgroud)

\ b基本上是指字边界.可以是空格,标点符号等

编辑评论:

print(re.sub('\\blocal\\b', '*****', "Hello, LOCAL locally local test local.", flags=re.IGNORECASE))
// Hello, ***** locally ***** test *****.
Run Code Online (Sandbox Code Playgroud)

如果你不想忽略这种情况,你可以删除flags = re.IGNORECASE.


Gur*_*lik 10

下面你可以使用简单的功能.

def find_word(text, search):

   result = re.findall('\\b'+search+'\\b', text, flags=re.IGNORECASE)
   if len(result)>0:
      return True
   else:
      return False
Run Code Online (Sandbox Code Playgroud)

使用:

text = "Hello, LOCAL locally local test local."
search = "local"
if find_word(text, search):
  print "i Got it..."
else:
  print ":("
Run Code Online (Sandbox Code Playgroud)