我需要为我拆分一条非常复杂的行。我要拆分的行如下
2019.10.20-22.01.33: '10.11.111.25 9999995555884411:TechnoBeceT(69)' logged in
我怎么能这样拆分
['2019.10.20-22.01.33', '10.11.111.25', '9999995555884411', 'logged in']
我不需要
TechnoBeceT(69)
这个领域。
使用正则表达式
import re
p = re.compile(r'(([d.-]+)(?::|s)|(logged in))')
s = "2019.10.20-22.01.33: '10.11.111.25 9999995555884411:TechnoBeceT(69)' logged in"
q = [x[1] or x[2] for x in p.findall(s)]
print(q)
输出
['2019.10.20-22.01.33', '10.11.111.25', '9999995555884411', 'logged in']
看起来你只需要用''、':'和'TechnoBeceT(69('拆分为适当的正则表达式。这个现有的问题可能是你需要的:在 Python 中使用多个分隔符拆分字符串