如何使用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地址[重复]的主要内容,如果未能解决你的问题,请参考以下文章