我正在尝试从字符串中提取类似***。ini的子字符串。 例如,我有
000012: 378:210 File=test1.ini Cmd:send command1
000512: 3378:990 File=test2.ini Cmd:send command2 File=not.ini Cmd: include command
我需要在第一个“File =”之后提取子字符串,并在第一个File = ***。ini之后提取子字符串,即“Cmd:...”直到结束。
所以我想要的结果是:
test1.ini
Cmd:send command1
和
test2.ini
Cmd:send command2 File=not.ini Cmd: include command
我试过了:
re.match("(.*) File=(.*).ini(.*)Cmd:(.*)", line, re.M\re.I)
这适用于第一行,但对于第二行, 我明白了:
test2.ini Cmd:send command2 File=not.ini #which is wrong, wanted is:
test.ini
Cmd: include command
任何人都请帮忙。谢谢。 LJ
答案 0 :(得分:1)
答案 1 :(得分:1)
。*过于贪心,也没有必要从一开始就匹配。试试这个
re.search("File=([^\.]+.ini).*?(Cmd:.*)", line).groups()