熟练使用正则表达式来验证手机号、QQ号等的正误

前端之家收集整理的这篇文章主要介绍了熟练使用正则表达式来验证手机号、QQ号等的正误前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

QQ号

QQ号现在一般为5-11位数字,而且开头不为0。

var qqStr="12345"

var qqReg=/^[1-9]\d{4,10}$/;

console.log(qqReg.test(qqStr));//qq正则

电话号

电话号一般位前3/4位数字,一个"-",后面为8位数字。或者前4位数字,一个"-",后面为7位数字。

var phoneStr="0349-29837218"
/*0349-3089000 
\d{4}-\d{7}

010-34678903
\d{3}-\d{8}

0349-23456789
\d{4}-\d{8}*/

var phoneReg=/^(\d{4}-\d{7,8}|\d{3}-\d{8})$/;//电话正则
console.log(phoneReg.test(phoneStr));

手机号

手机号一般为11位数字,开头为1,第二位一般是3/4/5/7/8.

var dhStr="18233374844"
var dhReg=/^1[34578]\d{9}$/;//手机号正则
console.log(dhReg.test(dhStr));

电子邮件

电子邮件一般开始为数字、字母、下划线(w),然后为@,接下来是数字或字母,然后是".",最后为字母。

var emailStr="234445122@qq.com"
var emailReg=/^\w+@[a-z0-9A-Z]+\.[a-z]+$/;//电子邮件正则
console.log(emailReg.test(emailStr));  //有".",需要在其前面加上"\"转译

身份证

身份证一般为第一位数字不为0,然后是5位数字,接下来是出生年月日,然后是4位数字,最后一位数可能位X。

var sfStr="14463819981128641X"
var sfReg=/^[1-9]\d{5}\d{4}\d{2}\d{2}\d{3}[0-9X]$/;//身份证正则
console.log(sfReg.test(sfStr));

网址

网址一般开头为http/https,然后为"://",然后为字母,接下来是".",然后是字母、数字、下划线,然后是".",然后为字母,最后是可有可无的非空字符。

var urlStr="http://www.baidu.com/"
var urlReg=/^http[s]?\:\/\/[a-z]+\.\w+\.[a-z]+[^\s]*$/;//网址正则
console.log(urlReg.test(urlStr));//"."":""/"都需要在其前面加"/"转译

密码

密码必须6位以上,纯字母或纯数字都是"弱",字母加数字是"中",字母加数字再加字符则为"强"。

var mmStr="2ds24gvd++"
var mmReg1=/[a-zA-Z]/;
var mmReg2=/[0-9]/;
var mmReg3=/[^0-9a-zA-Z]/;//密码正则

var qiangdu=0;
if(mmReg1.test(mmStr)){
qiangdu++;

}if(mmReg2.test(mmStr)){
qiangdu++;

}if(mmReg3.test(mmStr)){
qiangdu++;

}

if(mmStr.length<6){
console.log("密码必须六位");

    }else if(qiangdu==1){
    console.log("弱");
    
    }else if(qiangdu==2){
    console.log("中 ");
    
    }else if(qiangdu==3){
    console.log("强");
    
    }

截取

截取该字符串的后三位

console.log("nafbbfdhb".slice(-3));//输出dhb,

正则判断

判断一个字符串是这样的,第一个是字母,后面可以是字母、数字、下划线,总长度为5-20.

/^[a-zA-Z]\w{5,20}$/

删除空格

对string对象进行扩展,使其具有删除前后空格的方法

var str="  uabbvi  ";  

String.prototype.trim=function(){
     return this.replace(/(^\s+)|(\s+$)/g,"");
       }
console.log("|"+str+"|");//输出|  uabbvi  |
console.log("|"+str.trim()+"|");//输出|uabbvi|

从第一个字符串中删除第二个字符串中所有的字符

输入"They are students"和"aeIoU"
删除之后第一个字符串变成"Thy r stdnts"

var strone="They are students";
var strtwo="aeIoU";

var reg2=new RegExp("["+strtwo+"]","g");

console.log(strone.replace(reg2,""));//输出Thy r stdnts

猜你在找的正则表达式相关文章