作者热门文章
- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我正在尝试使用 Regexp 匹配 Nmap 命令的输出。可以有两种不同的格式。
第一种格式(当 nmap 可以找到主机名时)
Nmap scan report for 2u4n32t-n4 (192.168.2.168)
和第二种格式(没有主机名)
Nmap scan report for 192.168.2.1
我想同时捕获主机名和 IP 地址,如果没有主机名,就按照第二种格式获取 Ip 作为主机名。
到目前为止,我在 golang 中尝试的正则表达式是
Nmap scan report for\\s+([^[:space:]]+)(\\s+\\(([^[:space:]]+)\\))?
但是我在 golang 中得到的结果
第一种格式(它给了我 (192.168.2.168)
我不想要的)如下:
[Nmap scan report for 2u4n32t-n4 (192.168.2.168), 2u4n32t-n4 , (192.168.2.168) , 192.168.2.168]
第二种格式(它给了我 我不想要的)如下:
[Nmap scan report for 192.168.2.1, 192.168.2.1, ]
正确的做法是什么?
最佳答案
关于正则表达式 : Grouping in a group,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22163443/
我是一名优秀的程序员,十分优秀!