通过匹配模式获取多个子字符串



嗨,我有一个像这样的长字符串(只是因为这里实际上很大(Error hasdashdkashdaskhdkha status:400 nt Error asdasdasdasdasdas status 404 nt

我想从这个输出这样的东西

1.  Error hasdashdkashdaskhdkha status:400
2.  Error asdasdasdasdasdas status 404

为此,我正在做这样的事情

import re
mainString = "Error hasdashdkashdaskhdkha status:400 nt Error asdasdasdasdasdas status 404 nt"
start = re.escape("Error")
end   = re.escape("nt")
result = re.search('%s(.*)%s' % (start, end), mainString).group(1)
print(result)

而我得到的是只是CCD_ 2。请建议我如何同时获得

您应该使用re.findall来查找每个事件。不过,您可以微调选择,因为您正在选择Error之后和错误代码之后的空白。请参见输出数组。

import re
mainString = "Error hasdashdkashdaskhdkha status:400 nt Error asdasdasdasdasdas status 404 nt"
start = re.escape("Error")
end   = re.escape("nt")
result = re.findall('%s(.*)%s' % (start, end), mainString)
>>> result
[' hasdashdkashdaskhdkha status:400 ', ' asdasdasdasdasdas status 404 ']

相关内容

  • 没有找到相关文章