Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 用于匹配以html换行符结尾的组的正则表达式_Python_Regex - Fatal编程技术网

Python 用于匹配以html换行符结尾的组的正则表达式

Python 用于匹配以html换行符结尾的组的正则表达式,python,regex,Python,Regex,我有下面的文本,我正在python正则表达式中匹配组1、2和3,直到我想匹配'srcuser:'和html换行标记之间的'me'。我的正则表达式是seqno:(\d+)+?src:(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}.+?dst:(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}.+?srcuser:(.+)?[html换行符] domain: 1<br/>receive_time: 2017/10/25 13:47:19<br/>

我有下面的文本,我正在python正则表达式中匹配组1、2和3,直到我想匹配'srcuser:'和html换行标记之间的'me'。我的正则表达式是seqno:(\d+)+?src:(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}.+?dst:(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}.+?srcuser:(.+)?[html换行符]

domain: 1<br/>receive_time: 2017/10/25 13:47:19<br/>serial: 00790100000<br/>seqno: 7198725<br/>actionflags: 0x0<br/>type: THREAT<br/>subtype: spyware<br/>config_ver: 1<br/>time_generated: 2017/10/25 13:47:19<br/>src: 1.1.1.1<br/>dst: 2.2.2.2<br/>natsrc: 1.1.1.1<br/>natdst: 2.2.2.2<br/>rule: to INTERNET<br/>srcuser: me<br/>blabla
domain:1
接收时间:2017/10/25 13:47:19
序列号:00790100000
序列号:7198725
动作标志:0x0
类型:威胁
子类型:间谍软件
配置版本:1
生成时间:2017/10/25 13:47:19
src:1.1.1.1.1
dst:2.2
请告知

您可以尝试:

seqno: (\d+).+?src: (\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}).+?dst: (\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}).+?srcuser: (.+)?<br\/>
seqno:(\d+)+?src:(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}.+?dst:(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}.+?src用户:(.+)?

为什么你们这些人坚持要贴墙?如果你真的,真的必须用正则表达式来做这件事(你不需要),至少要分多个步骤来做。使用正则表达式,尽管我建议不要这样做,但你可以使用
(?:)?\s*(\w+):::\s*(*(?=\s*)
。这可以防止对特定值进行硬编码。使用代码根据组1的值确定实际需要的值。