搜索匹配的字符串

时间:2014-11-21 20:30:17

标签: python

我正在尝试搜索匹配的字符串列表。

这是我的字符串列表:

ignore = ['40015','8002']

我正在使用以下内容寻找匹配

if any(evtsummary in s for s in ignore):

如果evtsummary =“8002”匹配

如果evtsummary =“something8002”则不匹配

我希望它在两种情况下都匹配。

3 个答案:

答案 0 :(得分:1)

假设evtsummary是您所说的字符串,并且您希望匹配something 8002而不是something8002

所以只需拆分evtsummary,然后检查:

if any(s in evtsummary.split() for s in ignore):

答案 1 :(得分:0)

看起来你的意思是:

if any(s in evtsummary for s in ignore):
    ...

这意味着,evtsummary是否包含ignore列表中的任何项目?

答案 2 :(得分:0)

因为它不清楚你真正想要的是什么。这里有三个不同的尝试,每个都针对三个不同的字符串进行测试。

ignore = ['40015','8002']

for evtsummary in ["something 8002", "something8002", "8002"]:
    print "trying with {}".format(evtsummary)
    if any(evtsummary in s for s in ignore):
        print "first"

    if any(s in evtsummary for s in ignore):
        print "second"

    if any(s in evtsummary.split() for s in ignore):
        print "third"
    print

好像你想要第二个选项,但原来的问题听起来更像你想要的第三个选项。