如何使用Perl从文本文件中提取IP地址?

qdo*_*dog 6 regex perl

如何从每行具有IP地址的文本文件中提取IP地址?我想提取IP,然后在单独的文件中列出IP地址.包含IP的文本文件采用以下格式:

主机somehost.com(192.168.1.1)启动(延迟0.20秒).
主机10.1.0.0启动(延迟0.21秒).
主机172.1.0.0启动(延迟0.21秒).


我正在尝试将生成的文本文件输出如下:

192.168.1.1
10.1.0.0
172.1.0.0

使用Perl执行此操作的最佳方法是什么?

注意:它不需要考虑有效IP的正则表达式......只需采用上述格式的IP即可.

谢谢!

hob*_*bbs 16

use Regexp::Common qw/net/;
while (<>) {
  print $1, "\n" if /($RE{net}{IPv4})/;
}
Run Code Online (Sandbox Code Playgroud)