Python 来自字符串的正则表达式多子字符串
我应该能解决这个问题,但我显然遗漏了一些东西 鉴于这一点:Python 来自字符串的正则表达式多子字符串,python,regex,Python,Regex,我应该能解决这个问题,但我显然遗漏了一些东西 鉴于这一点: <190>1 2020-12-22T15:23:46+00:00 192.168.2.1 dhcpd - - - dhcpd: DHCPREQUEST for 192.168.2.11 from c0:ee:fb:f5:d8:da (OnePlus3) via igb2 1 2020-12-22T15:23:46+00:00 192.168.2.1 dhcpd----dhcpd:DHCPREQUEST for 192.16
<190>1 2020-12-22T15:23:46+00:00 192.168.2.1 dhcpd - - - dhcpd: DHCPREQUEST for 192.168.2.11 from c0:ee:fb:f5:d8:da (OnePlus3) via igb2
1 2020-12-22T15:23:46+00:00 192.168.2.1 dhcpd----dhcpd:DHCPREQUEST for 192.168.2.11从c0:ee:fb:f5:d8:da(OnePlus3)通过igb2
dhcpd:请问,我如何提取日期/时间以及dhcpd之后的所有内容
我试过了
import re
string = '<190>1 2020-12-22T15:23:46+00:00 192.168.2.1 dhcpd - - - dhcpd: DHCPREQUEST for 192.168.2.11 from c0:ee:fb:f5:d8:da (OnePlus3) via igb2'
r = re.compile ("\d{4}-\d{2}-\S{17}")
r.findall(string)
重新导入
字符串='1 2020-12-22T15:23:46+00:00 192.168.2.1 dhcpd----dhcpd:DHCPREQUEST for 192.168.2.11从c0:ee:fb:f5:d8:da(OnePlus3)通过igb2'
r=re.compile(“\d{4}-\d{2}-\S{17}”)
r、 芬德尔(字符串)
这很好——如果我尝试添加dhcpd:.+
,它就会停止工作
请问我做错了什么?这将进入一个脚本,从我的dhcp日志中提取行。剩下的我可以处理
提前谢谢您是否尝试过
“\d{4}-\d{2}-\S{17}.*(dhcpd:.*)”
?这将保存从dhcpd:
开始的所有内容。如果我使用这种模式,恐怕会丢失日期。现场-谢谢。
r = re.compile (r"(\d{4}-\d{2}-\S{17}).*dhcpd(.+)$")
print( r.findall(string) )