1-255整数正则
(25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|[1-9])
姓名(纯汉字)校验
[\u4E00-\u9Fa5]
表示中文汉字。以下代码匹配2-10个汉字,如果有不是汉字的字符则返回null。如果是纯数字,则返回一个数组。第一个元素为这个纯汉字的字符串。
var name = "sd152哈2";
name.match(/^[\u4E00-\u9Fa5]{2,10}$/g)); //null
var name = "哈哈";
name.match(/^[\u4E00-\u9Fa5]{2,10}$/g)); //["哈哈"]
身份证号校验
^[0-9]{17}[0-9x]$表示以数字开头17位,加最后一位数字或X
id.match(/^[0-9]{17}[0-9x]$/i));
手机号等(纯数字)校验
//判断是纯数字
var re = /^[0-9]*[1-9][0-9]*$/
re.test("1025sds"); //false
密码等(不能包含汉字)校验
search搜索字符串中是否包含汉字,如果有返回第一个出现的下标,没有则返回-1
//判断字符串是否包含汉字
var re = /[\u4E00-\u9FA5]/;
"大大142525".search(re); //0
"sdd142525".search(re); //-1
判断有没有表情字符
isEmojiCharacter: function(substring) {
for ( var i = 0; i < substring.length; i++) {
var hs = substring.charCodeAt(i);
if (0xd800 <= hs && hs <= 0xdbff) {
if (substring.length > 1) {
var ls = substring.charCodeAt(i + 1);
var uc = ((hs - 0xd800) * 0x400) + (ls - 0xdc00) + 0x10000;
if (0x1d000 <= uc && uc <= 0x1f77f) {
return true;
}
}
} else if (substring.length > 1) {
var ls = substring.charCodeAt(i + 1);
if (ls == 0x20e3) {
return true;
}
} else {
if (0x2100 <= hs && hs <= 0x27ff) {
return true;
} else if (0x2B05 <= hs && hs <= 0x2b07) {
return true;
} else if (0x2934 <= hs && hs <= 0x2935) {
return true;
} else if (0x3297 <= hs && hs <= 0x3299) {
return true;
} else if (hs == 0xa9 || hs == 0xae || hs == 0x303d || hs == 0x3030
|| hs == 0x2b55 || hs == 0x2b1c || hs == 0x2b1b
|| hs == 0x2b50) {
return true;
}
}
}
}
网友评论