搜索模式(如果存在)

时间:2016-04-11 23:49:54

标签: python

我有一个表示字符串的Python列表。如果任何其他字符串包含列表中提到的任何单词,则排除该其他字符串以进行进一步处理:

print ignore_list
['name', 'wait', 'delete']

我有其他字符串格式低于:

My Name is xxxx
OR
Hello
OR
This is to be deleted
etc

现在我需要排除所有嵌入了str的字符串,如ignore_list中所述。我的代码如下所示:

if string_val and not string_val in ignore_list:
print string_val

但是上层代码似乎实际上比较了一些东西:

if "This is to be deleted" and "This is to be deleted" in 
['name', 'wait', 'delete']:
print string_val  ==> prints "This is to be deleted" as the same is not present in the list

如何实现相同的功能,即如果字符串值的任何列表嵌入在字符串中,那么它应该被忽略否则处理?

1 个答案:

答案 0 :(得分:0)

您可以将all与生成器表达式结合使用,以检查忽略列表中每个单词的成员资格:

if all(x not in s for x in ignore_list):
    print s