微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

分组--正则表达式

在正则表达式中,可以用小括号将一些规则括起来当作分组,分组可以作为一个元字符来看待。

分组的例子,验证 IP 地址:

(\d{1,3}\.){3}\d{1,3}

这是一个简单的且不完善的匹配 IP 地址的正则表达式,因为它除了能匹配正确的 IP 地址外,还能匹配如 322.197.578.888 这种不存在的 IP 地址。

当然,用这个表达式简单匹配成功后可以在利用 PHP 的算术比较再加以判断 IP 地址是否正确。而正则表达式中没有提供算术比较功能,如果要完全匹配正确的 IP 地址,则需要改进如下:

((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[0-4]\d|[01]?\d\d?)

规则说明

该规则关键之处在于确定 IP 地址每一段范围为 0-255 ,然后再重复 4 次即可。在:

25[0-5]|2[0-4]\d|[01]?\d\d?

中,用分枝首先确定了 250-255 和 200-249 。 [01]?\d\d? 则确定了 0-199 的范围,综合起来就是 0-255 。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐