已关闭。此问题需要details or clarity。当前不接受答案。
**想要改进此问题?**添加详细信息并通过editing this post阐明问题。
9小时前关门了。
Improve this question
我需要创建一个正则表达式,如果该字段中没有IP,则捕获源主机。
如果src_host字段不包含IP地址,我想创建一个名为“src_host”的命名组。
src_host=\"10.20.30.40\",src_ip=\"10.20.30.40\"
src_host=\"example.com\",src_ip=\"10.20.30.40\"
在上例中,命名组src_host应包含:
- 第一条记录:example.com或任何值
- 第二条记录:空白(因为src_host包含一个ip地址)
请记住,我需要一个名为“src_host”的名称组作为输出。
我试过很多选择,但都不起作用。
1条答案
按热度按时间ibrsph3r1#
您可以尝试使用以下正则表达式:
正则表达式解释:
(?<=src_host=")
前瞻,以确保匹配先于src_host="
\D+?(\.\D+?)+
以匹配您的非IPS(?=")
后看,以确保匹配之后是"
在这种情况下,惰性量词(
+?
)将帮助您匹配尽可能少的非数字(\D
)。检查here演示。