使用正则表达式验证数字字符串
在尝试使用正则表达式“d”验证数字字符串时,您遇到了意外的匹配对于 IP 地址。要了解原因,让我们深入研究正则表达式匹配的细节。
“d”模式匹配从 0 到 9 的任何单个数字。“d”匹配一个或多个数字的任何序列。虽然这看起来很简单,但值得注意的是,它仅检查字符串“内部”,而不是从头到尾。
在您的示例中,字符串“78.46.92.168:8000”包含一系列数字(“78”)位于字符串的开头。因此,“d”匹配该序列,即使由于“.”的存在整个字符串不是数字。和 ":"。
解决方案:
要验证从头到尾都是数字的字符串,可以使用以下表达式:
以上是为什么验证数字字符串时'\d”匹配 IP 地址?的详细内容。更多信息请关注PHP中文网其他相关文章!