【问题标题】:Searching for Multiple Strings within another String using any()使用 any() 在另一个字符串中搜索多个字符串
【发布时间】:2016-04-07 14:43:08
【问题描述】:

我目前使用的是 Python 3.4.2,但在尝试在另一个字符串中搜索多个字符串时没有得到预期的结果。

我创建了一个集合,其中包含字符串格式类似于 TEXT.NA[Y]ABC 的项目。我试图只捕获包含 .NA、.SA 或 .EU 作为示例的集合中的项目。

testset = set()
testset.add(('Blah','TEXT.NA[Y]ABC'))
testset.add(('Bleh','OTHER.AU[X]DEF'))
region = ['.NA', '.SA', '.EU']
for text,key in testset:
    if any(sym in region for sym in key):
        print(key)

我希望上面的内容在跳过 OTHER.AU[X]DEF 的同时打印 TEXT.NA[Y]ABC 想知道我在迭代中做错了什么。

谢谢!

【问题讨论】:

    标签: python string any


    【解决方案1】:

    您的会员资格检查有误。您需要检查region 中的任何项目是否在key 中:

    >>> for text,key in testset:
    ...     if any(sym in key for sym in region):
    ...         print(key)
    ... 
    TEXT.NA[Y]ABC
    

    【讨论】:

    • 啊,谢谢你,看来它成功了。我对如何向后设置迭代器有所了解。非常感谢!
    猜你喜欢
    • 2021-11-28
    • 2013-01-18
    • 1970-01-01
    • 1970-01-01
    • 2011-05-11
    • 1970-01-01
    • 1970-01-01
    • 2012-03-05
    相关资源
    最近更新 更多