我正在编写一个python脚本来从我们的2GB Apache访问日志中提取数据.这是日志中的一行.
81.52.143.15 - - [01/Apr/2008:00:07:20 -0600] "GET /robots.txt HTTP/1.1" 200 29 "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1) VoilaBot BETA 1.2 (http://www.voila.com/)"
Run Code Online (Sandbox Code Playgroud)
我正试图从那一行得到日期部分,正则表达式让我失望,我不知道为什么.这是我的python代码:
l = 81.52.143.15 - - [01/Apr/2008:00:07:20 -0600] "GET /robots.txt HTTP/1.1" 200 29 "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1) VoilaBot BETA 1.2 (http://www.voila.com/)"
re.match(r"\d{2}/\w{3}/\d{4}", l)
Run Code Online (Sandbox Code Playgroud)
没有回报.也没有做到以下几点:
re.match(r"\d{2}/", l)
re.match(r"\w{3}", l)
Run Code Online (Sandbox Code Playgroud)
或其他任何我可以做的事情甚至可以参与约会.我有什么误会?
match()在字符串的开头查找匹配项.使用search()在字符串中的任何位置查找匹配项.更多信息:http://docs.python.org/library/re.html#matching-vs-searching