之前一直不太会写正则表达式,很多要用到正则表达式的都直接百度,像上次要用正则表达式验证是否是合法的ip地址,然后就上网找,结果就是没找到一个对的,今天就为大家贡献一下,写个对的,并做一下解析。(建议大家还是去看书去规范的学一下,不要直接百度,不然都是坑)。 iPv4的ip地址都是(1~255).(0~255).(0~255).(0~255)的格式 下面给出相对应的正则表达式: '^(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|[1-9])\\.' '(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\\d)\\.' '(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\\d)\\.' '(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\\d)$' 上面的一个不漏就是正确的验证ip的正则表达式,简单的讲解一下 \\d表示0~9的任何一个数字 {2}表示正好出现两次 [0-4]表示0~4的任何一个数字 | 的意思是或者 ( )上面的括号不能少,是为了提取匹配的字符串,表达式中有几个()就表示有几个相应的匹配字符串 1\\d{2}的意思就是100~199之间的任意一个数字 2[0-4]\\d的意思是200~249之间的任意一个数字 25[0-5]的意思是250~255之间的任意一个数字 [1-9]\\d的意思是10~99之间的任意一个数字 [1-9])的意思是1~9之间的任意一个数字 \\.的意思是.点要转义(特殊字符类似,@都要加\\转义) 说到这里应该已经很清楚的知道了上面的正则表达式的意思。 |
|