如何使用php提取所有IP地址[重复]

Posted

技术标签:

【中文标题】如何使用php提取所有IP地址[重复]【英文标题】:How to extract all IP address using php [duplicate] 【发布时间】:2014-08-29 13:27:25 【问题描述】:

请问如何从给定的字符串中提取所有 IP 地址。

例如:

"
2014-07-08 19:05:20 1X4YpU-0001kr-6y <= info@arianet-dsl.com H=(server.takcloud.com) [185.4.28.203] P=esmtps X=TLS1.2:DHE_RSA_AES_256_CBC_SHA256:256 S=1018 id=57844562-138B-4934-9CF7-554F8C613C1C@arianet-dsl.com
"

【问题讨论】:

【参考方案1】:

我会使用正则表达式

搜索由“.”分隔的最多三个“1,3”数字“\d”组成的组

\b\d1,3\.\d1,3\.\d1,3\.\d1,3\b

php 中使用它

$mailStr = "2014-07-08 19:05:20 1X4YpU-0001kr-6y <= info@arianet-dsl.com H=(server.takcloud.com) [185.4.28.203] P=esmtps X=TLS1.2:DHE_RSA_AES_256_CBC_SHA256:256 S=1018 id=57844562-138B-4934-9CF7-554F8C613C1C@arianet-dsl.com";
$regexpattern = "/\b\d1,3\.\d1,3\.\d1,3\.\d1,3\b/";
preg_match_all($regexpattern , $mailStr, $matches);
print_r($matches);

【讨论】:

+1 您在示例代码中错过了分隔符。 preg_match_all() 会找到所有的 IP 地址。 你想给我看一个带有正确分隔符的例子吗?

以上是关于如何使用php提取所有IP地址[重复]的主要内容,如果未能解决你的问题,请参考以下文章

正则表达式从字符串中提取 IP 地址 [重复]

如何找到登录我的网站的用户的IP地址,php [重复]

如何通过PHP中的IP地址获取时区[重复]

如何使用 PHP 从设备接收 GPS 数据?

如何在 PHP 中收集 IP 地址 [重复]

如何跟踪执行数据库操作的计算机的IP地址[重复]