假设我想在一个字符串中找到所有引用“AM”和“PM”的时间表达式。让我们暂时忽略我可以使用“[AP]M”来实现这一点(因为我实际上是从一个键是语言代码的字典中提取有效字符串列表['AM','PM'])。我想同时寻找两者,就像这样:
foo = ['am','pm']
separator = ':'
timex = re.compile('(1[012]|[1-9])%s([0-5][0-9])( %s)?' % (separator, foo), re.I)
bar = "It's 6:00 pm, do you know where your brain is?"
上面写的timex并没有告诉我我想要什么:它只匹配pm中的p。(它似乎将列表元素的所有字符都视为[ampm]。)
我不想在字符串上做两次传递(am和pm各一次)。你知道吗
有没有一个很好的Pythonic方法来为foo中的每一个项目做一次传递?你知道吗
以下是我插入要搜索的任意正则表达式项列表的方式:
退货
您可以捕获更多:
相关问题 更多 >
编程相关推荐