2

我正在使用 python 的 re 模块在字符串中搜索某些单词。

举个简单的例子,我有一个名为 valid_words 的列表和一个名为 valid_string 的字符串。

valid_string = "Use Use%"
valid_words = ['Use', 'Use%']

for header in valid_words:
  regex_search = re.search("\\b"+header+"\\b",  valid_string)
  if regex_search:
    print header

但是,这仅返回 Use 而不是 Use%。我认为这是因为 'Use%' 中的 % 被视为正则表达式。我对么?有没有办法解决这个问题?

4

1 回答 1

2

这里的问题是您正在使用单词边界,但是,对于您的第二个单词'Use%',单词边界实际上出现在eand之间%。例如:

>>> re.search('.\\b','Use%').group(0)
'e'
于 2013-05-22T21:06:52.237 回答