通过正则表达式检验前端表格的方法

本文详细介绍了如何使用JavaScript正则表达式在前端表格中进行数据验证,包括用户名、密码、身份证、座机号和手机号码等字段的规则检查。通过实例代码展示了如何实现这些验证功能,有助于提升前端表单数据的准确性和安全性。
摘要由CSDN通过智能技术生成

今天分享下”通过正则表达式检验前端表格的方法“这篇文章,文中根据实例编码详细介绍,或许对大家的编程之路有着一定的参考空间与使用价值,需要的朋友接下来跟着云南仟龙Mark一起学习一下吧。 下面给大家分享HTML用正则表达式检验表格的实例代码,具体代码内容如下所示:

​​<​​​​span​​ ​​style​​​​=​​​​"font-size:24px;color:#cc6600;“​​​​> 正则表达式在JavaScript脚本中是很好用的检验语法规则的方法。但是与Java中的正则表达式有所不同。它需要在regex规则上以“^”开始,以”$"结束。</​​​​span​​​​>​​

​​<​​​​span​​ ​​style​​​​=​​​​"font-size:24px;color:#cc6600;"​​​​>以下让我们看看一个实例。</​​​​span​​​​>​​

​​<​​​​span​​ ​​style​​​​=​​​​"font-size:18px;"​​​​> ​​

​​<​​​​html​​ ​​lang​​​​=​​​​"en"​​​​> ​​

​​<​​​​head​​​​> ​​

​​<​​​​meta​​ ​​charset​​​​=​​​​"UTF-8"​​​​> ​​

​​<​​​​title​​​​>Title</​​​​title​​​​> ​​

​​<​​​​style​​​​> ​​

​​form table tr td{ ​​

​​border: 1px solid lightgrey; ​​

​​text-align: center; ​​

​​} ​​

​​form table tr td input{ ​​

​​width: 97%; ​​

​​} ​​

​​</​​​​style​​​​> ​​

​​<​​​​script​​ ​​language​​​​=​​​​"JavaScript"​​ ​​type​​​​=​​​​"text/javascript"​​​​> ​​

​​//判断规则(正则表达式) ​​

​​function goto() { ​​

​​var name = document.getElementById(“name”); ​​

​​var pwd = document.getElementById(“pwd”); ​​

​​var pwd2 = document.getElementById(“pwd2”); ​​

​​var pnum = document.getElementById(“pnum”); ​​

​​var phone = document.getElementById(“phone”); ​​

​​var telephone = document.getElementById(“telephone”); ​​

​​var email = document.getElementById(“email”); ​​

​​if (name.value.trim().length<=8){ ​​

​​alert(“用户名长度必须大于八位”); ​​

​​name.focus() ​​

​​name.value=""; ​​

​​return; ​​

​​} ​​

​​// 规则必须包括大小写字母,数字 ​​

​​var regex = /^(?!(?:\d+|[a-zA-Z]+|[\da-z]+|[\dA-Z])KaTeX parse error: Undefined control sequence: \da at position 3: )[\̲d̲a̲-zA-Z]{6,}/; ​​

​​// var regex = /1{10,20}$/; ​​

​​if ( !pwd.value.match(regex)){ ​​

​​alert(“密码不符合规定”); ​​

​​pwd.focus() ​​

​​pwd.value=""; ​​

​​return; ​​

​​} ​​

​​if (pwd.value != pwd2.value){ ​​

​​alert(“两次输入的密码不相同”); ​​

​​pwd2.focus() ​​

​​pwd.value=""; ​​

​​pwd2.value=""; ​​

​​return; ​​

​​} ​​

​​var rege=/^\d{17}XKaTeX parse error: Undefined control sequence: \d at position 3: |^\̲d̲{15}/; ​​

​​if (!rege.test(pnum.value)){ ​​

​​alert(“身份证不符合规定”); ​​

​​pnum.focus() ​​

​​pnum.value=""; ​​

​​return; ​​

​​} ​​

​​var regex2 = /^\d{4}-\d{7}$/;//判断座机号 ​​

​​if (!regex2.test(phone.value)){ ​​

​​alert(“座机号码不符合规定”); ​​

​​phone.focus() ​​

​​phone.value=""; ​​

​​return; ​​

​​} ​​

​​var regex3 = /^1[3,5,7,8]\d{9}$/; ​​

​​if (!regex3.test(telephone.value)){ ​​

​​alert(“手机号码不符合规定”); ​​

​​telephone.focus(​​http://www.qlyl1688.com/products/kewhq.html​​) ​​

​​telephone.value=""; ​​

​​return; ​​

​​} ​​

​​//test方法必须用反斜杠转义 ​​

​​var regex4 = /^\w+([-+.]\w+)@\w+([-.]\w+).\w+([-.]\w+)*$/; ​​

​​if (!regex4.test(email.value)){ ​​

​​alert(“邮箱不符合规定”); ​​

​​email.focus() ​​

​​email.value=""; ​​

​​return; ​​

​​} ​​

​​} ​​

​​</​​​​script​​​​> ​​

​​</​​​​head​​​​> ​​

​​<​​​​body​​​​> ​​

​​<​​​​form​​​​> ​​

​​<​​​​table​​ ​​style​​​​=​​​​"width:600px;height: 300px;border: 1px solid lightgrey"​​​​> ​​

​​<​​​​tr​​​​> ​​

​​<​​​​td​​ ​​width​​​​=​​​​"18%"​​​​>登录名:</​​​​td​​​​> ​​

​​<​​​​td​​​​><​​​​input​​ ​​id​​​​=​​​​"name"​​​​type​​​​=​​​​"text"​​​​></​​​​td​​​​> ​​

​​<​​​​td​​ ​​width​​​​=​​​​"50%"​​​​>长度大于八位</​​​​td​​​​> ​​

​​</​​​​tr​​​​> ​​

​​<​​​​tr​​​​> ​​

​​<​​​​td​​​​>登录密码:</​​​​td​​​​> ​​

​​<​​​​td​​​​><​​​​input​​ ​​id​​​​=​​​​"pwd"​​​​type​​​​=​​​​"password"​​​​></​​​​td​​​​> ​​

​​<​​​​td​​​​>长度大于十位,包含字母数字</​​​​td​​​​> ​​

​​</​​​​textarea​​​​></​​​​td​​​​> ​​

​​</​​​​tr​​​​> ​​

​​<​​​​tr​​​​> ​​

​​<​​​​td​​​​>确认密码:</​​​​td​​​​> ​​

​​<​​​​td​​​​><​​​​input​​ ​​id​​​​=​​​​"pwd2"​​ ​​type​​​​=​​​​"password"​​​​></​​​​td​​​​> ​​

​​</​​​​tr​​​​> ​​

​​<​​​​tr​​​​> ​​

​​<​​​​td​​​​>身份证号码:</​​​​td​​​​> ​​

​​<​​​​td​​​​><​​​​input​​ ​​id​​​​=​​​​"pnum"​​ ​​type​​​​=​​​​"text"​​​​></​​​​td​​​​> ​​

​​<​​​​td​​​​>15位或18位最后一个是X</​​​​td​​​​> ​​

​​</​​​​tr​​​​> ​​

​​<​​​​tr​​​​> ​​

​​<​​​​td​​​​>固定电话:</​​​​td​​​​> ​​

​​<​​​​td​​​​><​​​​input​​ ​​id​​​​=​​​​"phone"​​​​type​​​​=​​​​"text"​​​​></​​​​td​​​​> ​​

​​<​​​​td​​​​>格式xxxx-xxxxxxx</​​​​td​​​​> ​​

​​</​​​​tr​​​​> ​​

​​<​​​​tr​​​​> ​​

​​<​​​​td​​​​>手机号码:</​​​​td​​​​> ​​

​​<​​​​td​​​​><​​​​input​​ ​​id​​​​=​​​​"telephone"​​​​type​​​​=​​​​"text"​​​​></​​​​td​​​​> ​​

​​<​​​​td​​​​>11位整数</​​​​td​​​​> ​​

​​</​​​​tr​​​​> ​​

​​<​​​​tr​​​​> ​​

​​<​​​​td​​​​>电子邮件:</​​​​td​​​​> ​​

​​<​​​​td​​​​><​​​​input​​ ​​id​​​​=​​​​"email"​​​​type​​​​=​​​​"text"​​​​></​​​​td​​​​> ​​

​​<​​​​td​​​​>xxxx@xxx.xxx xxx@xxx.xxx.xx</​​​​td​​​​> ​​

​​</​​​​tr​​​​> ​​

​​<​​​​tr​​​​> ​​

​​<​​​​td​​​​>现居住地:</​​​​td​​​​> ​​

​​<​​​​td​​​​><​​​​select​​​​> ​​

​​<​​​​option​​​​>–选择省份–</​​​​option​​​​> ​​

​​<​​​​option​​​​>北京</​​​​option​​​​> ​​

​​<​​​​option​​​​>河北</​​​​option​​​​> ​​

​​<​​​​option​​​​>广西</​​​​option​​​​> ​​

​​</​​​​select​​​​></​​​​td​​​​> ​​

​​<​​​​td​​​​><​​​​select​​​​> ​​

​​<​​​​option​​​​>–选择城市–</​​​​option​​​​> ​​

​​<​​​​option​​​​>烟台</​​​​option​​​​> ​​

​​<​​​​option​​​​>青岛</​​​​option​​​​> ​​

​​<​​​​option​​​​>哈尔滨</​​​​option​​​​> ​​

​​</​​​​select​​​​></​​​​td​​​​> ​​

​​</​​​​tr​​​​> ​​

​​<​​​​tr​​​​> ​​

​​<​​​​td​​ ​​colspan​​​​=​​​​"1"​​​​></​​​​td​​​​> ​​

​​<​​​​td​​​​><​​​​input​​ ​​id​​​​=​​​​"submit"​​ ​​type​​​​=​​​​"button"​​ ​​value​​​​=​​​​"提交注册信息"​​ ​​style​​​​=​​​​"width: 100px"​​ ​​onclick​​​​=​​​​"goto()"​​​​></​​​​td​​​​> ​​

​​<​​​​td​​​​><​​​​input​​ ​​type​​​​=​​​​"reset"​​ ​​value​​​​=​​​​"重置"​​ ​​style​​​​=​​​​"width: 60px"​​​​></​​​​td​​​​> ​​

​​</​​​​tr​​​​> ​​

​​</​​​​table​​​​> ​​

​​</​​​​form​​​​> ​​

​​</​​​​body​​​​> ​​

​​</​​​​html​​​​></​​​​span​​​​>​​

附:一些常使用的规则:

“^\d+$”  //非负整数(正整数 + 0)

2[1-9][0-9]$”  //正整数

“^((-\d+)|(0+))$”  //非正整数(负整数 + 0)

“^-[0-9][1-9][0-9]$”  //负整数

“^-?\d+$”    //整数

“^\d+(​ ​\.\d+)?$​​”  //非负浮点数(正浮点数 + 0)

“^(([0-9]+\.[0-9][1-9][0-9])|([0-9][1-9][0-9]\.[0-9]+)|([0-9][1-9][0-9]))$”  //正浮点数

“^((-\d+(​ ​\.\d+)?)|(0+(\.0+)?))$​​”  //非正浮点数(负浮点数 + 0)

“^(-(([0-9]+\.[0-9][1-9][0-9])|([0-9][1-9][0-9]\.[0-9]+)|([0-9][1-9][0-9])))$”  //负浮点数

“^(-?\d+)(​ ​\.\d+)?$​​”  //浮点数

3+$”  //由26个英文字母组成的字符串

4+$”  //由26个英文字母的大写组成的字符串

5+$”  //由26个英文字母的小写组成的字符串

6+$”  //由数字和26个英文字母组成的字符串

“^\w+$”  //由数字、26个英文字母或者下划线组成的字符串

7+(​ ​\.[\w-]+)*@[\w-]+(\.[\w-]+)+$​​”    //email地址

8+://(​ ​\w+(-\w+))(\.(\w+(-\w+)))(\?\S)?$​​”  //url

以上是云南仟龙Mark给大家介绍的所有内容,希望对大家有所帮助,如果大家有任何疑问请在脚本之家留言,如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!


  1. A-z0-9 ↩︎

  2. 0-9 ↩︎

  3. A-Za-z ↩︎

  4. A-Z ↩︎

  5. a-z ↩︎

  6. A-Za-z0-9 ↩︎

  7. \w- ↩︎

  8. a-zA-z ↩︎

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值