在列表中搜索特定字符的出现

Searching a list for occurrences of specific characters

我正在尝试搜索一个列表以查找连续出现的两个数字。

import re
list1 = ["something10", "thing01", "thingy05"]
list2 = re.findall(re.match([0-1][0-9]), list1)

每当我在 Python 命令行中尝试上述操作时,我都会收到以下错误。

IndexError: list index out of range

这个错误是什么意思,我该如何解决?

re.findall 将模式(或已编译的正则表达式)作为第一个参数,将字符串作为第二个参数。你在两个!-)

都失败了

re.match returns 匹配对象或 None -- 两者都不能作为 re.findall 的参数!只需将 r'[0-1][0-9]' 模式传递到那里即可。

第二个参数必须是字符串,而不是列表,所以,使用循环...:[=​​16=]

list2 = []
for astring in list1:
    list2.extend(re.findall(r'[0-1][0-9]', astring))