Python 通过匹配模式获取多个子字符串
您好,我有一个像这样的长字符串(只是在这里它太大了)Python 通过匹配模式获取多个子字符串,python,python-3.x,Python,Python 3.x,您好,我有一个像这样的长字符串(只是在这里它太大了)Error hasdaskdashdkha status:400\n\t Error asdasdas status 404\n\t 我想从这里得到类似这样的输出 1. Error hasdashdkashdaskhdkha status:400 2. Error asdasdasdasdasdas status 404 为此,我正在做类似的事情 import re mainString = "Error hasdashdkas
Error hasdaskdashdkha status:400\n\t Error asdasdas status 404\n\t
我想从这里得到类似这样的输出
1. Error hasdashdkashdaskhdkha status:400
2. Error asdasdasdasdasdas status 404
为此,我正在做类似的事情
import re
mainString = "Error hasdashdkashdaskhdkha status:400 \n\t Error asdasdasdasdasdas status 404 \n\t"
start = re.escape("Error")
end = re.escape("\n\t")
result = re.search('%s(.*)%s' % (start, end), mainString).group(1)
print(result)
我得到这个只是
错误hasdashdkskha状态:400
。请建议我如何同时获取这两个项目您应该使用re.findall
查找每个项目。不过,您可以微调选择,因为您选择的是Error
之后和错误代码之后的空格。请参阅输出数组
import re
mainString = "Error hasdashdkashdaskhdkha status:400 \n\t Error asdasdasdasdasdas status 404 \n\t"
start = re.escape("Error")
end = re.escape("\n\t")
result = re.findall('%s(.*)%s' % (start, end), mainString)
>>> result
[' hasdashdkashdaskhdkha status:400 ', ' asdasdasdasdasdas status 404 ']