正则表达式

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <meta http-equiv="X-UA-Compatible" content="IE=edge">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Document</title>

</head>

<body>

    1<input type="text"><br>

    2<input type="text"><br>

    3<input type="text" maxlength="18"><br>

    4<input type="text"><br>

    5<input type="text"><br>

    6<input type="text" minlength="15" maxlength="18"><br>

    7<input type="text"><br>

    8<input type="text"><br>

    9<input type="text" maxlength="18"><br>

    <input type="text"><br>

    <button>提交</button>

</body>

<script>

    var input=document.querySelectorAll('input')

    var button=document.querySelector('button')

    button.onclick=function(){

        // 匹配由数字和26个英文字母组成的字符串

        var val0 = input[0].value

        var reg0 = /^[a-zA-Z0-9]+$/gi

        console.log(reg0.test(val0));

        // 匹配由数字、26个英文字母或者下划线组成的字符串

        var val1 = input[1].value

        var reg1 = /^[a-zA-Z0-9_]+$/gi

        console.log(reg1.test(val1));

        // 匹配验证用户密码。 正确格式为:以字母开头,长度在6 - 18之间,只能包含字母、数字和下划线。

        var val2 = input[2].value

        var reg2 = /^[a-zA-Z][a-zA-Z0-9_]{5,}/

        console.log(reg2.test(val2));

        // 匹配整数

        var val3 = input[3].value

        var reg3 = /^-?\d+$/      //匹配一个可选的负号。

        console.log(reg3.test(val3));

        // 匹配非负整数

        var val4 = input[4].value

        var reg4 = /\d+$/

        console.log(reg4.test(val4));

        // 匹配中国身份证号码身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X  

        var val5 = input[5].value

        var reg5

        if(input[5].value.length=15){

            reg5=/\d{15}/

        }else if(input[5].value.length=18){

            reg5=/\d{17}[\d[xX]]$/

        }else{

            alert('身份证格式不正确')

        }

        console.log(reg5.test(val5));

        // 匹配邮箱

        var val6 = input[6].value

        var reg6 = /^[a-zA-Z1-9][a-zA-Z0-9_\-.]*@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/

        console.log(reg6.test(val6));

        // 匹配日期格式YYYY-MM-DD hh:mm:ss

        var val7 = input[7].value

        var reg7 = /^[1-9][0-9]{3}-(0[1-9]|1[0-9])-(0[1-9]|[1-2]\d|3[0-1]) (0[1-9]|1[0-9]|2[0-4]):[0-5]\d:[0-5]\d/

        console.log(reg7.test(val7));

        // 匹配腾讯QQ号

        var val8 = input[8].value

        var reg8 = /^[1-9]\d{0,8}$/

        console.log(reg3.test(val8));

        // 匹配正浮点数

        var val9 = input[9].value

        var reg9 = /^([1-9]\d*|0)(\.\d+)?$/

        console.log(reg3.test(val9));

    }

</script>

</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值