在列表中搜索特定字符的出现
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))
我正在尝试搜索一个列表以查找连续出现的两个数字。
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))