网站首页 > 基础教程 正文
开发中如果有input输入框,难免就要写正则表达式,因此在这里总结了一些常见常用的正则表达式的书写方法,希望会大家有所帮助;
附图:
一.手机号码
$(document).ready(function(){ //判断输入手机号码是否正确 $("#telephone").focus(function(){ document.getElementById("ph-hint").innerHTML = ":open_mouth:请输入11位手机号码"; }) $("#telephone").blur(function(){ if(/^((13[0-9])|(15[^4,\D])|(18[0-9]))\d{8}$/.test(this.value)){ document.getElementById("ph-hint").innerHTML = ""; }else if(document.getElementById("telephone").value == ""){ document.getElementById("ph-hint").innerHTML = " 咦,手机号不能为空哦"; }else{ document.getElementById("ph-hint").innerHTML = " 这好像不是一个手机号码哦"; document.getElementById("telephone").value = ""; } }) })
详解:当获取焦点时,提示文字请输入手机号,然后失去焦点时判断,那段正则表达式表示的是13几,这个几0-9都可以,或者15几,但是非4的都行,或者18几,0-9都可以,然后再加8位数字,符合条件则成功,否则根据情况判断提示文字;
二.密码
$(document).ready(function(){ //判断输入密码格式是否正确 $("#setpassword").focus(function(){ document.getElementById("pw-hint").innerHTML = ":open_mouth:请您输入密码,6-15个字母数字和符号两种以上组合"; }) $("#setpassword").blur(function(){ if(/^(?![0-9]+$)(?![a-z]+$)(?![A-Z]+$)(?![,\.#%'\+\*\-:;^_`]+$)[,\.#%'\+\*\-:;^_`0-9A-Za-z]{6,15}$/.test(this.value)){ document.getElementById("pw-hint").innerHTML = ""; }else if(document.getElementById("setpassword").value == ""){ document.getElementById("pw-hint").innerHTML = " 咦,密码不能为空哦"; }else{ document.getElementById("pw-hint").innerHTML = " 你的密码格式有误,请重新输入"; document.getElementById("setpassword").value = ""; } }) })
详解:当获取焦点时,提示文字请输入密码,然后失去焦点时判断,那段正则表达式表示的是可以输入0-9的数字和大小写的字母a-z,外加一些特殊符号,然后可以输入6-15位密码,符合条件则成功,否则根据情况判断提示文字;
以下格式我就不这样写了,简介一点,上面两段可以去参考。
三.用户名
//用户名正则,4到16位(字母,数字,下划线,减号) var username = /^[a-zA-Z0-9_-]{4,16}$/; //文字 var username=/[\d]/g;
四.电子邮箱
//对电子邮件的验证 var email = /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/;
五.身份证号
//身份证号(18位)正则 var cP = /^[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 time = /^\d{4}(\-)\d{1,2}\1\d{1,2}$/; //日期正则,复杂判定 var time = /^(?:(?!0000)[0-9]{4}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)-02-29)$/;
七.QQ号以及微信号
//QQ号正则,5至11位 var qq = /^[1-9][0-9]{4,10}$/; //微信号正则,6至20位,以字母开头,字母,数字,减号,下划线 var wx = /^[a-zA-Z]([-_a-zA-Z0-9]{5,19})+$/;
八.座机号
//座机号 var tel =/(^0\d{2}-8\d{7}$)|(^0\d{3}-3\d{6}$)/;
附加: 发送验证码倒计时写法
<input class="login-code-send" id="login-code-send" type="button" name="sendcode" value="发送验证码" onclick="settime(this);"/> //登录,忘记密码的验证码 var counts = 60; function settime(val) { if (counts == 0) { val.removeAttribute("disabled"); val.value = "获取验证码"; counts = 60; return false; } else { val.setAttribute("disabled", true); val.value = "重新发送("+counts+")"; counts--; } setTimeout(function () { settime(val); }, 1000); }
对前端的技术,架构技术感兴趣的同学关注我的头条号,并在后台私信发送关键字:“前端”即可获取免费的架构师学习资料
知识体系已整理好,欢迎免费领取。还有面试视频分享可以免费获取。关注我,可以获得没有的架构经验哦!!
猜你喜欢
- 2024-10-18 正则表达式:获取js函数体 js正则表达式获取字符串
- 2024-10-18 JavaScript正则表达式基础与实战应用
- 2024-10-18 js正则表达式(下)——常用正则 js中正则表达式的使用
- 2024-10-18 【编程思维】JavaScript正则表达式的深度解析
- 2024-10-18 JavaScript之正则表达式教程 js正则表达式?
- 2024-10-18 重温js——正则表达式 js正则表达式?
- 2024-10-18 js正则表达式验证大全 js 正则验证
- 2024-10-18 几条常用的JavaScript正则表达式 js 常用正则
- 2024-10-18 JavaScript正则表达式入门知识详细介绍
- 2024-10-18 弄懂每个JavaScript正则表达式的意思,有它就够了
- 最近发表
- 标签列表
-
- gitpush (61)
- pythonif (68)
- location.href (57)
- tail-f (57)
- pythonifelse (59)
- deletesql (62)
- c++模板 (62)
- css3动画 (57)
- c#event (59)
- linuxgzip (68)
- 字符串连接 (73)
- nginx配置文件详解 (61)
- html标签 (69)
- c++初始化列表 (64)
- exec命令 (59)
- canvasfilltext (58)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- node教程 (59)
- console.table (62)
- c++time_t (58)
- phpcookie (58)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)