python重新匹配“字符串末尾的空格”

2024-10-02 08:19:20 发布

您现在位置:Python中文网/ 问答频道 /正文

MOOC讲师给出的原始表达是

^(\S+) (\S+) (\S+) \[([\w:/]+\s[+\-]\d{4})\] "(\S+) (\S+)\s*(\S*)" (\d{3}) (\S+)

我想这里的问题是在HTTP/1.0的末尾有一个额外的空间来存放不好的文件,任何人都可以提示您做一个小的更改,使它成功地解析两个? 我试图将(\S*)改为(?)?:\s+|$)或(\s.*),但这两种方法都不起作用。在

下面是好的

^{pr2}$

下面那个坏的

Invalid logline: ix-li1-14.ix.netcom.com - - [08/Aug/1995:14:47:41 -0400] "GET /shuttle/missions/sts-70/mission-sts-70.html HTTP/1.0 " 200 20304

Tags: 文件方法comhttp空间moocix末尾
1条回答
网友
1楼 · 发布于 2024-10-02 08:19:20

直接进近

^(\S+) (\S+) (\S+) \[([\w:/]+\s[+\-]\d{4})\] "(\S+) (\S+)\s*(\S*)\s?" (\d{3}) (\S+)

注意第二个^{之前的\s?。在

这两个都匹配

^{pr2}$

以及

ix-li1-14.ix.netcom.com - - [08/Aug/1995:14:47:41 -0400] "GET /shuttle/missions/sts-70/mission-sts-70.html HTTP/1.0 " 200 20304

相关问题 更多 >

    热门问题