在正则表达式中搜索多个单词

时间:2014-06-16 18:53:09

标签: regex

我有一个单词列表,我想在一个字符串中找到它们(所有这些)。 可以在字符串中的任何位置找到单词而无需任何顺序。 例如:

str = "word2 bla bla word2 word1 word3 blabla word4" 
wordList = ["word1", "word2", "word3", "word4"]
if regex(str):
   print "it worked !"
else:
   print "it didn't work !"

列表的数量和内容都会发生变化。 它用于配置其他程序(pentaho),因此我无法真正编写代码。

如果有可能想在列表中添加一个可选的单词,并且如果其中一个是字符串的一部分,则返回true。

我不知道第二部分是否可以在1个正则表达式中使用,但如果你可以帮助我使用第一部分。

1 个答案:

答案 0 :(得分:0)

实现这一目标的最简单方法是不使用正则表达式:

if all(word in str for word in wordList):
  print "it worked!"
else:
  print "it didn't work!"