regex来找出我的数据内容是否为ip以外的域名值[已关闭]

ubof19bj  于 2023-01-27  发布在  其他
关注(0)|答案(1)|浏览(97)

已关闭。此问题需要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”的名称组作为输出。
我试过很多选择,但都不起作用。

ibrsph3r

ibrsph3r1#

您可以尝试使用以下正则表达式:

(?<=src_host=")\D+?(?:\.\D+?)+(?=")

正则表达式解释:

  • (?<=src_host=")前瞻,以确保匹配先于src_host="
  • \D+?(\.\D+?)+以匹配您的非IPS
  • (?=")后看,以确保匹配之后是"

在这种情况下,惰性量词(+?)将帮助您匹配尽可能少的非数字(\D)。
检查here演示。

相关问题