繁体   English   中英

在python中使用正则表达式搜索字符串列表

[英]Searching list of strings using regular expressions in python

我有一个字符串列表。 我想使用正则表达式选择与特定模式匹配的字符串。 Python正则表达式不采用列表,我不想使用循环。

有什么建议吗?

尝试:

def searcher(s):
    if COMPILED_REGEXP_OBJECT.search(s):
        return s

matching_strings = filter(searcher, YOUR_LIST_OF_STRING)

searcher()返回匹配的字符串,否则返回None filter()只返回“true”对象,因此将跳过None 它也会跳过空字符串,但怀疑这是一个问题。

或者,更好,正如@JonClements所指出的那样:

matching_strings = filter(COMPILED_REGEXP_OBJECT.search, YOUR_LIST_OF_STRING)

不仅更短,它只查找.search方法一次(而不是每个字符串一次)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM