python 上的正则表达式到单词匹配
Regex to word match on python
我正在尝试创建一个正则表达式来从 Nmap 输出中提取软件名称和版本(如果存在),例如:
ftp (product: vsftpd version: 2.3.4 ostype: Unix)
我应用了正则表达式:/product: (.*) version: (.*)/
它给出了结果:
group(1) = vsftpd , group(2) = 2.3.4 ostype: Unix
而我只需要版本 (2.3.4)
此外,版本应该是可选的我尝试了不同的东西但它不起作用
示例:
product: Apache Jserv extrainfo: Protocol v1.
因为没有版本我只需要`Apache Jserv'的部分
我如何制作所有这些?
使用这个正则表达式 demo:
product: ([\w ]+)(?:version: ([\w.]+)| \w+:)
只需忽略空格即可解决您的第一个问题,然后如果存在 none.
,则使用替代 return 版本
(?<=product|version):\s(\S*)
我正在尝试创建一个正则表达式来从 Nmap 输出中提取软件名称和版本(如果存在),例如:
ftp (product: vsftpd version: 2.3.4 ostype: Unix)
我应用了正则表达式:/product: (.*) version: (.*)/
它给出了结果:
group(1) = vsftpd , group(2) = 2.3.4 ostype: Unix
而我只需要版本 (2.3.4)
此外,版本应该是可选的我尝试了不同的东西但它不起作用 示例:
product: Apache Jserv extrainfo: Protocol v1.
因为没有版本我只需要`Apache Jserv'的部分
我如何制作所有这些?
使用这个正则表达式 demo:
product: ([\w ]+)(?:version: ([\w.]+)| \w+:)
只需忽略空格即可解决您的第一个问题,然后如果存在 none.
,则使用替代 return 版本(?<=product|version):\s(\S*)