正则表达式——古老而又强大的文本处理工具。仅用一段简短的表达式语句,就能快速地实现一个复杂的业务逻辑。掌握正则表达式,让你的开发效率有一个质的飞跃。

正则表达式经常被用于字段或任意字符串的校验,比如下面这段校验基本日期格式的JavaScript代码:

var reg = /^(\\d{1,4})(-|\\/)(\\d{1,2})\\2(\\d{1,2})$/;                  
                var r = fieldValue.match(reg);                              
                if(r==null)alert('Date format error!');

1、校验密码强度

密码的强度必须包含大小写字母和数字的组合,不能使用特殊字符,长度在8-10之间

^(?=.*\\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$

2、校验中文

字符串只能是中文

^[\\u4e00-\\u9fa5]{0,}$

3、由数字,26个英文字母或下划线组成的字符串

^\\w+$

4、校验E-Mail 地址

[\\w!#$%&'*+/=?^_`{|}~-]+(?:\\.[\\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\\w](?:[\\w-]*[\\w])?\\.)+[\\w](?:[\\w-]*[\\w])?

5、校验身份证号码

15位:

^[1-9]\\d{7}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}$

18位:

^[1-9]\\d{5}[1-9]\\d{3}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}([0-9]|X)$

6、校验日期

“yyyy-mm-dd“ 格式的日期校验,已考虑平闰年

^(?:(?!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)$

7、校验金额

金额校验,精确到2位小数

^[0-9]+(.[0-9]{2})?$

8、校验手机号

下面是国内 13、15、18开头的手机号正则表达式

^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\\d{8}$

9、判断IE的版本

^.*MSIE [5-8](?:\\.[0-9]+)?(?!.*Trident\\/[5-9]\\.0).*$

10、校验IP-v4地址

\\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\b

11、校验IP-v6地址

(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))

12、检查URL的前缀

if (!s.match(/^[a-zA-Z]+:\\/\\//)){   s = 'http://' + s;}

13、提取URL链接

^(f|ht){1}(tp|tps):\\/\\/([\\w-]+\\.)+[\\w-]+(\\/[\\w- ./?%&=]*)?

14、文件路径及扩展名校验

^([a-zA-Z]\\:|\\\\)\\\\([^\\\\]+\\\\)*[^\\/:*?"<>|]+\\.txt(l)?$

15、提取Color Hex  Codes

^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$

16、提取网页图片

\\< *[img][^\\\\>]*[src] *= *[\\"\\']{0,1}([^\\"\\'\\ >]*)

17、提取页面超链接

(<a\\s*(?!.*\\brel=)[^>]*)(href="https?:\\/\\/)((?!(?:(?:www\\.)?'.implode('|(?:www\\.)?', $follow_list).'))[^"]+)"((?!.*\\brel=)[^>]*)(?:[^>]*)>

18、查找CSS属性

^\\s*[a-zA-Z\\-]+\\s*[:]{1}\\s[a-zA-Z0-9\\s.#]+[;]{1}

19、抽取注释

<!--(.*?)-->

20、匹配HTML标签

<\\/?\\w+((\\s+\\w+(\\s*=\\s*(?:".*?"|'.*?'|[\\^'">\\s]+))?)+\\s*|\\s*)\\/?>

转自   http://www.jianshu.com/p/e7bb97218946

20个常用的正则表达式相关推荐

  1. 常用的正则表达式分享

    常用的正则表达式 搜集自互联网,由我本人进行整理和排版,不敢保证内容全部正确,如有错误,还请在评论中指出,我会及时更正. 校验数字的表达式 数字 /^[0-9]*$/ n位的数字 /^\d{n}$/ ...

  2. 正则满足中文的顿号_常用的正则表达式、正则表达式之断言

    一.常用的正则表达式: 1.手机号码:/^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])d{8}$/ 2.国内电话号码:/d ...

  3. php 匹配双字节字符串,收集一些常用的正则表达式(匹配中文字符、匹配双字节字符、匹配HTML标记、匹配空行 and so on~~~)...

    正则表达式用于字符串处理,表单验证等场合,实用高效,但用到时总是不太把握,以致往往要上网查一番.我将一些常用的表达式收藏在这里,作备忘之用.本贴随时会更新,请持续关注本站. 匹配中文字符的正则表达式: ...

  4. iOS中常用的正则表达式

    正则表达式是什么鬼呀?(大神请绕路哦) 在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串的需要.正则表达式就是用于描述这些规则的工具.换句话说,正则表达式就是记录文本规则的代码.很 ...

  5. 常用的正则表达式格式

    背景:正则表达式使用单个字符串来描述.匹配一系列匹配某个句法规则的字符串.通常我们使用正则表达式用作信息的验证.虽然正则表达式非常繁琐,但是它的功能却是非常的强大.学会之后会让我们的项目中除了提高效率 ...

  6. 正则表达式6___常用的正则表达式

    本篇博客收录了一些常用的正则表达式,收录的目的有两个: 一是通过解决 实际问题对前面 5 篇作一个总结 二是向大家提供一些现成的模式以帮助大家节省这方面的时间和精力 常用的正则表达式 1  中国的固定 ...

  7. JS常用的正则表达式(匹配邮箱、名字、手机号等等)

    JS常用的正则表达式(匹配邮箱.名字.手机号等等) /* 匹配英文或字符名字的正则表达式 */ var userNameReg = /^\w{6,30}$/; /* 匹配邮箱的正则表达式 */ var ...

  8. JS常用的正则表达式汇总

    目录 常用的正则表达式汇总 1.常用正则 1.1 校验数字的表达式 1.2 校验字符的表达式 1.3 特殊需求表达式 2.JS调用正则表达式示例 3.match和test区别 3.1 test 3.2 ...

  9. 12个最常用的正则表达式,帮助你解决50%的问题

    英文 | https://medium.com/frontend-canteen/you-dont-need-to-fully-understand-regex-you-just-need-to-kn ...

最新文章

  1. 2017年2月7日 今年第一天上班了
  2. Molecule – 帮助你构建跨平台的 HTML5 游戏
  3. 网络:TIME-WAIT
  4. 【Servlet】Filter过滤器详解、使用示例
  5. SQL查询过滤Where子句用法
  6. 电脑故障扫描修复软件_电脑故障分析:电脑安装软件提示没有权限的解决方法...
  7. jmeter 设置环境变量
  8. mysql常见的运算符及使用
  9. ASP.NET状态管理之一(概括篇)
  10. 虚拟化软件Xen的简单应用
  11. 最短寻道时间算法c语言,如果北京到上海有千亿条路,寻找最短路径用C语言编程用枚举法没效率,应该用什么算法才能高效解决它?...
  12. C语言中全局变量存放在哪个位置?
  13. python打包后怎么安装_别再问我怎么Python打包成exe了!
  14. IO流(1)--文件流及其原理
  15. 百度地图开发入门(4):散点图示例
  16. Windows远程连接Linux界面的两种方法
  17. iOS APP上线App Store流程(包括.p12导出)
  18. RT-Thread柿饼控件(1)-- AnimatedImage
  19. usleep()和sleep()的区别
  20. jarvis oj(web wp)

热门文章

  1. 现实地形导入UE4全流程
  2. WINCE REG文件相关资料
  3. 安装好了python环境后如何打开_教你如何安装Python环境
  4. python某公司为员工发放奖品_python 练习2
  5. 【转】ABP源码分析四十五:ABP ZERO中的EntityFramework模块
  6. 【转】Postman系列三:Postman中post接口实战(上传文件、json请求)
  7. C# 基础——C#特性
  8. Sharepoint项目周记一:关于开展MOSS项目的前期调查和需要解决的问题
  9. JAVA高级工程师课程笔记整理——(八)tomcat与九大内置对象
  10. 快速傅里叶变换及python代码实现