gpt4 book ai didi

python - 日志文件的正则表达式

转载 作者:行者123 更新时间:2023-12-05 07:43:47 27 4
gpt4 key购买 nike

我正在尝试提取从日志文件访问的唯一文件。即 "GET/socview/svspring01D.htm HTTP/1.1"*

据我所知,我想编写一个正则表达式来提取所有这些文件的格式。我已经完成了这个,但是我对此并不满意。我将不胜感激(我是编程新手)另外,因为我可以使用 GET 作为起点,所以我不想将其提取到字典中,有什么方法可以做到这一点吗?我正在使用字典来计算每个文件被访问的次数。

match = re.search (r'^GET.*\.1' ,logfile)

最佳答案

使用以下正则表达式:

^GET ([^\s]+).*$

然后匹配第一组$1获取文件名及其路径。 ^字符匹配字符串的开头,([^\s]+)匹配每个字符(尽可能多)直到下一个空白字符并形成一个匹配组。这是一个活生生的例子:https://regex101.com/r/pY7N0H/2


如果只想匹配文件名而不匹配路径,可以使用下面的正则表达式,查找第一个匹配项$1 (它需要相对路径,以 / 开头):

^GET (?:\/[^\/\s]+)*\/([^\s]+).*$

这是一个活生生的例子:https://regex101.com/r/SdXViV/1

关于python - 日志文件的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43369779/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com