有关身份证、邮箱、用户名、密码的正则表达式练习

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script type="text/javascript" src="JS.js"></script>
</head>

<body>
<form onsubmit="return usernamecheck();">
<p>用户名正则:4-16位(字母,数字,下划线,减号)</p>
用户名:<input type="text" id="username"/>
<input type="submit" value="提交"/></form><br/>
<p>用户名强度正则:最少6位,包括至少一个大写字母、一个小写字母、一个数字、一个特殊字符</p>
<form onsubmit="return passwordcheck();">
密码:<input type="text" id="password"/>
<input type="submit" value="提交"/></form><br/>
<p>邮箱正则:</p>
<form onsubmit="return emailcheck();">
邮箱:<input type="text" id="email"/>
<input type="submit" value="提交"/></form><br/>
<p>身份证正则:</p>
<form onsubmit="return idcardcheck();">
身份证:<input type="text" id="idcard"/>
<input type="submit" value="提交"/></form>
</body>
</html>
JS部分:
// JavaScript Document

function usernamecheck() {
    var standard1= /^[a-zA-Z0-9_-]{4,16}$/;
    var username=document.getElementById("username").value;
    if(standard1.test(username))
    {
        alert("格式正确");
    }
    else{
        alert("格式错误");
    }
    }
    
function passwordcheck(){
    var standard2=/^.*(?=.{6,})(?=.*d)(?=.*[A-Z])(?=.*[a-z])(?=.*[!@#$%^&*? ]).*$/;
    var password=document.getElementById("password").value;
    if(standard2.test(password))
    {
        alert("格式正确");
    }
    else{
        alert("格式错误");
    }
    }
    
function emailcheck(){
    var standard3= /^([A-Za-z0-9_-.])+@([A-Za-z0-9_-.])+.([A-Za-z]{2,4})$/;
    var email=document.getElementById("email").value;
    if(standard3.test(email))
    {
        alert("格式正确");
    }
    else{
        alert("格式错误");
    }
    }
    
function idcardcheck(){
    var standard4= /^[1-9]d{5}(18|19|([23]d))d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)d{3}[0-9Xx]$/;
    var idcard=document.getElementById("idcard").value;
    if(standard4.test(idcard))
    {
        alert("格式正确");
    }
    else{
        alert("格式错误");
    }
    }
原文地址:https://www.cnblogs.com/5H5H/p/9916711.html