ip地址正则--分解法
ip地址由四个0-255数字的字段组成,段与段之间点号(.)隔开。 正则中没有数字大小判断,那么只能利用分解法将255进行分解, 匹配 正则 解释 0-9 d 单个数字 10-99 [1-9]d 两位数 对于三位数最大为255,所以将三位数再次分解为100-199 200-249 250-255 100-199 1dd 100-199的三位数 200-249 2[0-4]d 200-249的三位数 250-255 25[0-5] 250-255的三位数 综合起来:(d|([1-9]d)|(1dd)|(2[0-4]d)|(25[0-5])) 注:使用圆括号将数字聚合起来。 该表达式的缺陷:对于254这样的数字,会挨个匹配为2、5、4 最好的解决办法是: 将顺序倒过来:((25[0-5])|(2[0-4]d)|(1dd)|([1-9]d)|d) 对于最终的ip正则为: ((25[0-5])|(2[0-4]d)|(1dd)|([1-9]d)|d)(.(25[0-5])|(2[0-4]d)|(1dd)|([1-9]d)|d){3} 对问题逐个列出,逐个解决! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |