正则表达式匹配ip地址


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

会出现不符合ip地址格式的匹配结果,不知道为什么
example:254.0.0.04,不是正确的ip地址匹配格式,但是依然可以匹配成功,但是这个匹配的表达式我觉得写的没毛病,完全不应该匹配上这个结果,但是实际上确实输出了
有人知道原因吗?

正确的匹配格式可以为:
^([1-9]|([1-9][0-9])|(1[0-9][0-9])|(2[0-4][0-9])|(25[0-5]))(\.([0-9]|([1-9][0-9])|(1[0-9][0-9])|(2[0-4][0-9])|(25[0-5]))){3}$
结果应该是完全正确的,我没有设计所有的测试用例,如果有错误可以指出来
这个表达式可以通过254.254.0.0,没有匹配0的位置啊?


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM