JavaScript中使用正则表达式


  1. 使用直接量写法
    以斜杆表示开始和结束:var regex = /^[a-zA-Z]+$/;,创建一个内容为^[a-zA-Z]+$的正则表达式,验证英文字母
 var str = document.getElementById("str").value.trim();//获取指定id的内容,去除空格var regex = /^[a-zA-Z]+$/; // 直接量正则表达式if(!regex.test(str)){alert("请输入正确的英文字母!");}

2.使用内置构造函数生成
通过实例化得到对象:var regex = new RegExp('^[a-zA-Z]+$');,创建一个内容为^[a-zA-Z]+$的正则表达式,验证英文字母,等价于上面直接量方式

 var str = document.getElementById("str").value.trim();//获取指定id的内容,去除空格var regex = new RegExp('^[a-zA-Z]+$'); // 构造函数if(!regex.test(str)){alert("请输入正确的英文字母!");}

3. 下面是JS常用正则表达式

JS验证代码:

     // 验证帮助var verifyUtils = {// 验证输入的内容是否是空isNull:function(idStr){var str = document.getElementById(idStr).value.trim();var regex = /\S/;if(!regex.test(str)){alert("文本框不能为空,请输入内容!");}},// 验证输入的字符是否是英文字母isLetter:function(idStr){var str = document.getElementById(idStr).value.trim();var regex = /^[a-zA-Z]+$/;if(!regex.test(str)){alert("请输入正确的英文字母!");}//  验证日期格式是否为YYYY-MM-DD格式},isDate:function(idStr){var str = document.getElementById(idStr).value.trim();var regex = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/;var r = str.match(regex); // 使用match方法获取指定字符串的值if(r==null){alert("请输入正确的日期格式!");}//  验证日期格式是否为YYYY-MM-DD hh:mm:ss格式},isDateTime:function(idStr){var str = document.getElementById(idStr).value.trim();var regex = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;var r = str.match(regex); // 使用match方法获取指定字符串的值if(r==null){alert("请输入正确的日期格式!");}// 验证整数},isInteger:function(idStr){var str = document.getElementById(idStr).value.trim();var regex = /^[-+]?\d*$/;if(!regex.test(str)){alert("请输入正确的整数!");}// 验证双精度},isDouble:function(idStr){var str = document.getElementById(idStr).value.trim();var regex = /^[-\+]?\d+(\.\d+)?$/;if(!regex.test(str)){alert("请输入正确的小数!");}// 验证中文},isChinese(idStr){var str = document.getElementById(idStr).value.trim();var regex = /^[\u0391-\uFFE5]+$/;if(!regex.test(str)){alert("请输入正确的中文!");}// 验证邮箱},isEmail(idStr){var str = document.getElementById(idStr).value.trim();var regex = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;if(!regex.test(str)){alert("请输入正确的邮箱格式!");}// 验证手机号},isPhone(idStr){var str = document.getElementById(idStr).value.trim();var regex = /^1[3456789]\d{9}$/;if(!regex.test(str)){alert("请输入正确的手机号!");}// 验证身份证},isIdCard(idStr){var str = document.getElementById(idStr).value.trim();var regex = /^\d{6}(18|19|20)?\d{2}(0[1-9]|1[12])(0[1-9]|[12]\d|3[01])\d{3}(\d|X)$/;if(!regex.test(str)){alert("请输入正确的身份证号码!");}}};

正则验证代码如下:
验证字母:/^[a-zA-Z]+$/
验证长度为3的字符:/^.{3}$/
验证由26个英文字母组成的字符串:/^[A-Za-z]+$/
验证日期YYYY-MM-DD:/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/
验证邮编:/^\d{6}$/
验证日期格式YYYY-MM-DD hh:mm:ss:/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/
验证整数:/^[-+]?\d*$/
验证小数:/^[-\+]?\d+(\.\d+)?$/
验证中文:/^[\u0391-\uFFE5]+$/
验证邮箱:/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/
验证手机号:/^1[3456789]\d{9}$/
验证身份证:/^\d{6}(18|19|20)?\d{2}(0[1-9]|1[12])(0[1-9]|[12]\d|3[01])\d{3}(\d|X)$/

表达式分析:
“/”代表一个正则表达式;
“^”代表字符串的开始位置,“$”代表字符串的结束位置;
“?”代表匹配前面的字符一个或零个,所以这里0?的意思是手机号码可以以0开头或不以0开头。
那里写的不对可以指出,如果你有更好的方式,可以一起讨论,希望可以帮助到大家,也可以加qq群:1007307899

JS常用正则表达式大全相关推荐

  1. 常用正则表达式大全 (转)

    网上找到的常用正则表达式,留着以后可能用得上,正则表达式实在是不好写,只好拿来主义了,在Delphi中没有自己带有正则表达式的组件,靠第三方了,都说PerlRegEx 是首选, 去这里下载,官方网站: ...

  2. 转载:常用正则表达式大全!(例如:匹配中文、匹配html)

    常用正则表达式大全!(例如:匹配中文.匹配html) 匹配中文字符的正则表达式: [u4e00-u9fa5] 评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹配双字节字符(包括汉字在内):[ ...

  3. 2016/07/11 常用正则表达式大全 (转)

    网上找到的常用正则表达式,留着以后可能用得上,正则表达式实在是不好写,只好拿来主义了,在Delphi中没有自己带有正则表达式的组件,靠第三方了,都说PerlRegEx 是首选, 去这里下载,官方网站: ...

  4. 正则表达式的用法和常用正则表达式大全(转)

    我们在编写程序时, 无可避免的都需要用到验证各种信息是否正确, 特别是在登录和注册账户时, 需要验证是否符合格式, 然后再传回服务器进行验证 我们先来看一下这个正则表达式如何运用 //邮箱 + (BO ...

  5. JS常用正则表达式和JS控制输入框输入限制(数字、汉字、字符)

                                   JS常用正则表达式和JS控制输入框输入限制(数字.汉字.字符) 验证数字:^[0-9]*$ 验证n位的数字:^\d{n}$ 验证至少n位数 ...

  6. js 正则或_Web前端工程师要知道的JS 常用正则表达式

    说起正则表达式,相信从事web前端开发的人一定很熟悉,正则表达式通常被用来检索.替换那些符合某个模式(规则)的文本,是web前端开发中经常会用到的.今天,就为大家分享JS常用的正则表达式以及创建正则表 ...

  7. 收集的JS常用正则表达式等

    //   短日期,形如 (2003-12-05) function strDateTime(str) { var r = str.match(/^(d)(-│/)(d)2(d)$/); if(r==n ...

  8. 收集的JS常用正则表达式等(转载)

    //   短日期,形如 (2003-12-05)  function strDateTime(str)  {  var r = str.match(/^(d)(-│/)(d)2(d)$/);  if( ...

  9. JS常用函数 大全

    转载: http://zhangbq168.blog.163.com/blog/static/2373530520086215149426/ 2007年08月05日 星期日 15:50 Js常用函数 ...

  10. 前端开发中的 正则表达式 及常用正则表达式大全

    RegExp 是正则表达式(Regular expression)的缩写,就是用一个"字符串"来描述一个特征,然后去验证另一个"字符串"是否符合这个特征.比如 ...

最新文章

  1. 520 情人节 :属于Python 程序员的脱单攻略大合集(视频版)
  2. excel2007无法加载mysql_Excel2007中进行无法安装加载项的解决方法
  3. java框架三层架构是_MVC框架模式和Javaweb经典三层架构
  4. 研究者设计了Fastball任务早期诊断阿尔茨海默病
  5. 通用无线设备对码软件_电动车上的无线电池管理系统wBMS
  6. JavaScript之常用方法讲解
  7. python 抓网卡数据包_Python选择网卡发包及接收数据包
  8. saltstack grains
  9. java自动化测试成长日记-之CVS客户端和服务端安装和部署1:CVS服务端的配置和基本使用...
  10. mysql8.0默认端口_mysql 8.0.19 安装 及 端口修改
  11. 博图在线升级 gsd_增值税发票开票软件(金税盘版)升级开票指南
  12. antd menu 样式修改
  13. pku 1392 Ouroboros Snake
  14. Android 沉浸式(透明)状态栏细研-超级细还附 Demo
  15. 模拟按键 —— 鼠标
  16. 软件测试(6)----web自动化测试(selenium)
  17. hive谓词与cbo的一些奇葩事
  18. 读书笔记软件调试之道 :从大局看调试-发现代码存在问题
  19. 转载一位老码农的技术理想
  20. mod在计算机导论中是什么意思,计算机导论ppt课件

热门文章

  1. Robocode:下载安装及迁移至IntelliJ
  2. 看产品经理怎么用360实现Java垃圾回收!
  3. WPF 最简方法使用自己定制的 WPF 框架
  4. 使用 Python MQTT 客户端 Paho-MQTT 的初学者指南
  5. 数据可视化:Metabase
  6. android nv21 nv12,直接进行nv21或者nv12的resize
  7. word VBA_替换下划线
  8. 7. 稀疏表示之OMP,SOMP算法及openCV实现
  9. 无线通信技术-NB-IoT
  10. 未安装任何音频设备解决方案(2021/12/27)