【javascript】javascript常见正则表达式实例

javascript常见正则表达式实例

实例来源

  1 var myRegExp = {
  2     // 检查字符串是否为合法QQ号码
  3     isQQ: function(str) {
  4         // 1 首位不能是0  ^[1-9]
  5         // 2 必须是 [5, 11] 位的数字  \d{4, 9}
  6         var reg = /^[1-9][0-9]{4,9}$/gim;
  7         if (reg.test(str)) {
  8             console.log('QQ号码格式输入正确');
  9             return true;
 10         } else {
 11             console.log('请输入正确格式的QQ号码');
 12             return false;
 13         }
 14     },
 15     // 检查字符串是否为合法手机号码
 16     isPhone: function(str) {
 17         var reg = /^(0|86|17951)?(13[0-9]|15[012356789]|18[0-9]|14[57]|17[678])[0-9]{8}$/;
 18         if (reg.test(str)) {
 19             console.log('手机号码格式输入正确');
 20             return true;
 21         } else {
 22             console.log('请输入正确格式的手机号码');
 23             return false;
 24         }
 25     },
 26     // 检查字符串是否为合法Email地址
 27     isEmail: function(str) {
 28         var reg = /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/;
 29         // var reg = /\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/;
 30         if (reg.test(str)) {
 31             console.log('Email格式输入正确');
 32             return true;
 33         } else {
 34             console.log('请输入正确格式的Email');
 35             return false;
 36         }
 37     },
 38     // 检查字符串是否是数字
 39     isNumber: function(str) {
 40         var reg = /^\d+$/;
 41         if (reg.test(str)) {
 42             console.log(str + '是数字');
 43             return true;
 44         } else {
 45             console.log(str + '不是数字');
 46             return false;
 47         }
 48     },
 49     // 去掉前后空格
 50     trim: function(str) {
 51         var reg = /^\s+|\s+$/g;
 52         return str.replace(reg, '');
 53     },
 54     // 检查字符串是否存在中文
 55     isChinese: function(str) {
 56         var reg = /[\u4e00-\u9fa5]/gm;
 57         if (reg.test(str)) {
 58             console.log(str + ' 中存在中文');
 59             return true;
 60         } else {
 61             console.log(str + ' 中不存在中文');
 62             return false;
 63         }
 64     },
 65     // 检查字符串是否为合法邮政编码
 66     isPostcode: function(str) {
 67         // 起始数字不能为0,然后是5个数字  [1-9]\d{5}
 68         var reg = /^[1-9]\d{5}$/g;
 69         // var reg = /^[1-9]\d{5}(?!\d)$/;
 70         if (reg.test(str)) {
 71             console.log(str + ' 是合法的邮编格式');
 72             return true;
 73         } else {
 74             console.log(str + ' 是不合法的邮编格式');
 75             return false;
 76         }
 77     },
 78     // 检查字符串是否为合法身份证号码
 79     isIDcard: function(str) {
 80         var reg = /^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)$/;
 81         if (reg.test(str)) {
 82             console.log(str + ' 是合法的身份证号码');
 83             return true;
 84         } else {
 85             console.log(str + ' 是不合法的身份证号码');
 86             return false;
 87         }
 88     },
 89     // 检查字符串是否为合法URL
 90     isURL: function(str) {
 91         var reg = /^https?:\/\/(([a-zA-Z0-9_-])+(\.)?)*(:\d+)?(\/((\.)?(\?)?=?&?[a-zA-Z0-9_-](\?)?)*)*$/i;
 92         if (reg.test(str)) {
 93             console.log(str + ' 是合法的URL');
 94             return true;
 95         } else {
 96             console.log(str + ' 是不合法的URL');
 97             return false;
 98         }
 99     },
100     // 检查字符串是否为合法日期格式 yyyy-mm-dd
101     isDate: function(str) {
102         var reg = /^[1-2][0-9][0-9][0-9]-[0-1]{0,1}[0-9]-[0-3]{0,1}[0-9]$/;
103         if (reg.test(str)) {
104             console.log(str + ' 是合法的日期格式');
105             return true;
106         } else {
107             console.log(str + ' 是不合法的日期格式,yyyy-mm-dd');
108             return false;
109         }
110     },
111     // 检查字符串是否为合法IP地址
112     isIP: function(str) {
113         // 1.1.1.1  四段  [0 , 255]
114         // 第一段不能为0
115         // 每个段不能以0开头
116         //
117         // 本机IP: 58.50.120.18 湖北省荆州市 电信
118         var reg = /^([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])){3}$/gi;
119         if (reg.test(str)) {
120             console.log(str + ' 是合法的IP地址');
121             return true;
122         } else {
123             console.log(str + ' 是不合法的IP地址');
124             return false;
125         }
126     }
127 }
128 // 测试
129 // console.log(myRegExp.isQQ('80583600'));
130 // console.log(myRegExp.isPhone('17607160722'));
131 // console.log(myRegExp.isEmail('80583600@qq.com'));
132 // console.log(myRegExp.isNumber('100a'));
133 // console.log(myRegExp.trim('  100  '));
134 // console.log(myRegExp.isChinese('baixiaoming'));
135 // console.log(myRegExp.isChinese('小明'));
136 // console.log(myRegExp.isPostcode('412345'));
137 // console.log(myRegExp.isIDcard('42091119940927001X'));
138 // console.log(myRegExp.isURL('https://www.baidu.com/'));
139 // console.log(myRegExp.isDate('2017-4-4'));
140 // console.log(myRegExp.isIP('1.0.0.0'));

 

posted @ 2017-09-22 03:48  carsonwuu  阅读(316)  评论(0编辑  收藏  举报