IPV4的格式为x:y:z:w,其中{x,y,z,w}属于{0~255}的正整数;
下面是其校验的正则表达式:
- function isIP(ip)
- {
- var re = /^(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5])$/
- return re.test(ip);
- }
其中 /^(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5])$/ 定义了一个正则表达式:
^(d{1,2}|1dd|2[0-4]d|25[0-5]).--------^~代表开头,表示要么是两位数、要么是以1开头的三位数,要么以2开头的但是不能超过255的三位数
(d{1,2}|1dd|2[0-4]d|25[0-5]).---------限定了介于0~255之前的整数
(d{1,2}|1dd|2[0-4]d|25[0-5]).---------限定了介于0~255之前的整数
(d{1,2}|1dd|2[0-4]d|25[0-5])$---------$~代表以介于0~255之前的整数结尾。
d 匹配一个字数字符,/d/ = /[0-9]/;
{n,m} 匹配n-m次;
[xyz] 字符集(character set),匹配这个集合中的任一一个字符(或元字符);
做为转意,即通常在""后面的字符不按原来意义解释,如/b/匹配字符"b",当b前面加了反斜杆后//,转意为匹配一个单词的边界。
第二种正则表达式:
- function isIP(ip)
- {
- var reg = /^(d+).(d+).(d+).(d+)$/;
- if (reg.test(ip))
- {
- ip.match(reg);
- if (RegExp.$1<=255&&RegExp.$1>=0
- &&RegExp.$2<=255&&RegExp.$2>=0
- &&RegExp.$3<=255&&RegExp.$3>=0
- &&RegExp.$4<=255&&RegExp.$4>=0)
- {
- return true;
- }else
- {
- return false;
- }
- }else
- {
- return false;
- }
- }
学习博客http://blog.csdn.net/pg_guo/article/details/8532147有感而发~~