正则表达式
js正则用法示例:
var nameReg = /^[a-zA-Z0-9_-]{4,12}$/;
if(!nameReg.test(tmp.instance_name)) {
$("#vmsNameNotReg").fadeIn(800);
setTimeout(function(){
$("#vmsNameNotReg").fadeOut(800);
}, 2000);
return;
}
1. 固定电话:
严格版(带区号):eg. 0755-12345678
var phoneReg = /^0[1-9]{2,3}-[1-9]\d{5,7}$/;
宽松版:eg. 12345678
var phoneReg = /^[0-9-]{7,13}$/;
2.手机号码:
严格版:eg. 13671736868
var mobileReg = /^0?(13[0-9]|15[012356789]|17[0678]|18[0-9]|14[57])[0-9]{8}$/;
宽松版:eg. 12345678905
var mobileReg = /^[1]\d{10}$/;
3.英文,数字,下划线,中划线组合
var reg1 = /^[\w-]{1,10}$/;
var reg2 = /^[a-zA-Z0-9_-]{1,10}$/
4.中文
只能输入中文 var reg = /^[\u4e00-\u9fa5]*$/
只能输入中文和字母 var reg = /^[A-Z|a-z|\u4e00-\u9fa5]*$/;
5.用户名校验:1-10位字母或数字以及下划线,大小写都可以,开头必须是字母
var reg = /^[a-z][a-z_0-9]{1,10}$/;
var str = $scope.user.userName;
if(!reg.test(str)) {
alert("太长");
}
(1) 中文名格式:全中文,中间空格可有可无,长度2 到20位:例如: 林夕、林 夕、林心如
var reg = /^[\u4e00-\u9fa5 ]{2,20}$/
(2) 英文名格式:Last/Frist Middle,Middle前有空格,长度2到20: qgi/qq li
var reg = /^[a-zA-Z\/ ]{2,20}$/
6.任意字符
var reg = /^[\s|\S]{1,10}$/; //匹配1-10位任意字符
7.邮箱
var regMail = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((.[a-zA-Z0-9_-]{2,3}){1,2})$/;
8.匹配<<content>>
var reg1 = (<<){1}[\w]*(>>){1}
var reg2 = <<.*?>>
9.IPv4地址
var ipReg = /^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/;
10. 大于等于0小于等于100的正整数
可以有小数:^100$|^(\d|[1-9]\d)(\.\d+)*$
不可以有小数:^100$|^(\d|[1-9]\d)$
0-32 之间的正整数: ^([0-9]|[1-2]\d|3[0-2])$
11. input输入空格的判断
var
strings =
' '
;
if
(strings.replace(/(^s*)|(s*$)/g,
""
).length ==0)
{
alert(
'不能为空'
);
}
$("#password").focus();
return;
}
13. 1-30 正整数: ^([12][0-9]|30|[1-9])$
7-30正整数: ^([7-9]|[1-2]\d|30)$
30-75正整数: ^([3-6]\d|7[1-5])$
14. 1-10000之间正整数
^(?:[1-9][0-9]{0,3}(?:\.\d{1,2})?|10000|10000.00)$
1~1000:
^(?!0)(?:[0-9]{1,3}|1000)$
1~10000:
^(?!0)(?:[0-9]{1,4}|10000)$