1.手机号正则
var pattern = /^1(3|4|5|7|8)\d{9}$/
var pattern = /^1[34578]\d{9}$/
2. 8~30位同时包含数字大小写字母并且不含特许符号
var r = /^(?=.*[0-9].*)(?=.*[A-Z].*)(?=.*[a-z].*)[0-9A-Za-z]{8,30}$/;
var r = /^(?![0-9A-Z]+$)(?![0-9a-z]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{8,20}$/;
var flag = r.test(_loginPsd);
if(flag){
}else{
}
3. 6~16位至少包含字母和数字并允许含有符号
var reg2 = /(?!^[0-9]+$)(?!^[A-z]+$)(?=^[A-z0-9]+$)^.{6,16}$/;
4. 用户名(3!16位,支持数字、字母、下划线、横线)
var r = /^[a-z0-9_-]{3,16}$/
5. test方法与match方法的区别:
test(),exec()是RegExp对象方法,match()是String对象方法。
test()返回 true 和 false
var regu = /[^\d]/g;
console.log(regu.test(fasdfafd)) //true
match()返回匹配结果数组,如匹配不到返回null
var reg = /[a-c]/ig;
console.log("adfBCcqwe".match(reg)); //["a", "B", "C", "c"]
6.匹配除汉字,字母,数字,逗号,句号外的特殊字符(用来规范输入内容)
/[^\u4e00-\u9fa5a-zA-Z\d,\.,。]+/
其中\u4e00-\u9fa5匹配汉字,a-zA-Z匹配字母,\d匹配数字,,.,。匹配逗号和句号,^表示非,+表示尽可能多的匹配。
7.匹配中文标点和汉字
//匹配这些中文标点符号 。 ? ! , 、 ; : “ ” ‘ ' ( ) 《 》 〈 〉 【 】 『 』 「 」 ﹃ ﹄ 〔 〕 … — ~ ﹏ ¥
var reg = /[\u3002|\uff1f|\uff01|\uff0c|\u3001|\uff1b|\uff1a|\u201c|\u201d|\u2018|\u2019|\uff08|\uff09|\u300a|\u300b|\u3008|\u3009|\u3010|\u3011|\u300e|\u300f|\u300c|\u300d|\ufe43|\ufe44|\u3014|\u3015|\u2026|\u2014|\uff5e|\ufe4f|\uffe5]/;
if(reg.test(text)){ alert('是中文标点符号'); }else{ alert('不是中文标点符号'); }
匹配中文标点符号:
String st = "[\u3002\uff1b\uff0c\uff1a\u201c\u201d\uff08\uff09\u3001\uff1f\u300a\u300b]"
该表达式可以识别出: 。 ; , : “ ”( ) 、 ? 《 》 这些标点符号。
匹配中文汉字
String str="[\u4e00-\u9fa5]"; 该表达式可以识别出任何汉字。
8.匹配空格
// var rg = /[\s]/ 这个是匹配空白字符 // /[\u0020]/空格
var rg = /[\u0020]/
console.log(rg.test(val.partName));
var rg = /[\s]/
console.log(rg.test(val.partName));
9.匹配手机/pad用户,微信浏览器用户,pc用户
var ua = navigator.userAgent.toLowerCase(); //手机端pad端访问
if(/mobile|android|iphone|ipad|phone/i.test(ua)) {
window.location.href ="http://m.example.com";
}
var ua = navigator.userAgent.toLowerCase(); //微信浏览器
if(/micromessenger/i.test(ua){
//to do
}
var ua = navigator.userAgent.toLowerCase(); pc端访问
if(/windows/i.test(ua){
//to do
}
判断是安卓还是ios :
var u = navigator.userAgent;
var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android终端
var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端
alert('是否是Android:'+isAndroid);
alert('是否是iOS:'+isiOS);