正则表达式——常用正则表达式验证输入合法性(一)

1.去掉字符串首尾空格的正则表达式怎么写?

  var str ="   abfhjpo jifpokroi okj;vwaiu    "
        console.log(str);                            //   abfhjpo jifpokroi okj;vwaiu    
        str = str.replace(/^\s+|\s+$/g, '');
        console.log(str);                           // abfhjpo jifpokroi okj;vwaiu

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

var qqStr="12345"
var qqReg=/^[1-9]\d{4,10}$/;
console.log(qqReg.test(qqStr));//qq正则  

3.电话号
电话号一般位前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));  

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

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

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

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

6.身份证
身份证一般为第一位数字不为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));

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

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

8.密码
密码必须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("强");
    
    }  

9.截取
截取该字符串的后三位

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

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

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

11.删除空格
对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

12、固话

function isPhone(v){

var reg = /^1(3|5|7|8|9)\\d{9}$/;

return reg.test(v);

}
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值