常用正则表达式

(转自月光博客,原文地址:http://www.williamlong.info/archives/433.html)

  正则表达式(Regular Expression,在代码中常简写为regex、regexp或RE)是计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。在很多文本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的文本。许多程序设计语言都支持利用正则表达式进行字符串操作。在很多文本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的文本。

  正则表达式用于字符串处理、表单验证等场合,实用高效。现将一些常用的表达式收集于此,以备不时之需。

  匹配中文字符的正则表达式: [\u4e00-\u9fa5]
  评注:匹配中文还真是个头疼的事,有了这个表达式就好办了

  匹配双字节字符(包括汉字在内):[^\x00-\xff]
  评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)

  匹配空白行的正则表达式:\n\s*\r
  评注:可以用来删除空白行

  匹配HTML标记的正则表达式:<(\S*?)[^>]*>.*?</\1>|<.*? />
  评注:网上流传的版本太糟糕,上面这个也仅仅能匹配部分,对于复杂的嵌套标记依旧无能为力

  匹配首尾空白字符的正则表达式:^\s*|\s*$
  评注:可以用来删除行首行尾的空白字符(包括空格、制表符、换页符等等),非常有用的表达式

  匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
  评注:表单验证时很实用

  匹配网址URL的正则表达式:[a-zA-z]+://[^\s]*
  评注:网上流传的版本功能很有限,上面这个基本可以满足需求

  匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$
  评注:表单验证时很实用

  匹配国内电话号码:\d{3}-\d{8}|\d{4}-\d{7}
  评注:匹配形式如 0511-4405222 或 021-87888822

  匹配腾讯QQ号:[1-9][0-9]{4,}
  评注:腾讯QQ号从10000开始

  匹配中国邮政编码:[1-9]\d{5}(?!\d)
  评注:中国邮政编码为6位数字

  匹配身份证:\d{15}|\d{18}
  评注:中国的身份证为15位或18位

  匹配ip地址:\d+\.\d+\.\d+\.\d+
  评注:提取ip地址时有用

  匹配特定数字:
  ^[1-9]\d*$    //匹配正整数
  ^-[1-9]\d*$   //匹配负整数
  ^-?[1-9]\d*$   //匹配整数
  ^[1-9]\d*|0$  //匹配非负整数(正整数 + 0)
  ^-[1-9]\d*|0$   //匹配非正整数(负整数 + 0)
  ^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$   //匹配正浮点数
  ^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$  //匹配负浮点数
  ^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$  //匹配浮点数
  ^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$   //匹配非负浮点数(正浮点数 + 0)
  ^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$  //匹配非正浮点数(负浮点数 + 0)
  评注:处理大量数据时有用,具体应用时注意修正

  匹配特定字符串:
  ^[A-Za-z]+$  //匹配由26个英文字母组成的字符串
  ^[A-Z]+$  //匹配由26个英文字母的大写组成的字符串
  ^[a-z]+$  //匹配由26个英文字母的小写组成的字符串
  ^[A-Za-z0-9]+$  //匹配由数字和26个英文字母组成的字符串
  ^\w+$  //匹配由数字、26个英文字母或者下划线组成的字符串

  评注:最基本也是最常用的一些表达式

除非注明,月光博客文章均为原创,转载请以链接形式标明本文地址

  本文地址:http://www.williamlong.info/archives/433.html

转载于:https://www.cnblogs.com/xinge1993/p/4780836.html

《转》常用的正则表达式相关推荐

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

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

  2. 收集常用的正则表达式

    收集常用的正则表达式,欢迎补充. 1.匹配IP地址 function isIP(value){return /^((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\ ...

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

    一.常用的正则表达式: 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 ...

  4. 常用的正则表达式验证类

    搜集的一些常用的正则表达式验证类: using System;  using System.Text.RegularExpressions;    namespace CommonTools  {  ...

  5. php正则运用,php中常用的正则表达式的介绍及应用实例代码

    更全面的实例,可以参考 最常用的PHP正则表达式收集整理 //www.jb51.net/article/14049.htm php 正则表达式小结 //www.jb51.net/article/198 ...

  6. php的正则表达式函数,php中常用的正则表达式函数

    php中常用的正则表达式函数 * preg_match() * preg_match_all() * preg_replace() * preg_filter() * preg_grep() * pr ...

  7. 几个常用的正则表达式

    几个常用的正则表达式(下面是在javascript里面的使用方式): 1. 正则表达式的中文表示 var reg_zh=/^[\u4E00-\u9FA5\uF900-\uFA2D]*$/; 2. 正则 ...

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

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

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

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

  10. 常用的正则表达式方法1

    常用的正则表达式方法 /** * 检查输入的身份证号是否正确 * 输入:str  字符串 *  返回:true 或 flase; true表示格式正确 */ function checkIdCard( ...

最新文章

  1. mysql insert delay_解析mysqldump的delay-insert选项
  2. Spring 事务失效?看这篇文章就够了!
  3. VS2010Web默认的浏览器设置和VS里调试JavaScript代码的设置
  4. Redis的常用命令——list的常用命令
  5. win7 系统盘下AppData文件夹中Local和Roaming分别有什么作用?
  6. 高端计算机教室,又一所高端学校来了,能住校师资力量强大
  7. 深度学习方法(五):卷积神经网络CNN经典模型整理Lenet,Alexnet,Googlenet,VGG,Deep Residual Learning
  8. 【安卓开发 】Android初级开发(七)MD5加密
  9. Base64的编码实现原理攻略
  10. 马斯克调侃苹果145元“抹布” !网友补刀:779元的空酒瓶比天价“抹布”更迷惑...
  11. ZOJ 1234 UVA 10271 Chopsticks
  12. 4400 万个微软帐户使用泄露的密码
  13. Android View 的scrollTo 和 scrollBy方法
  14. 进程的同步和互斥反映了_进程的同步和互斥
  15. fpga开发教程 labview_LabVIEW入门
  16. 频谱泄漏 matlab,关于MATLAB FFT频谱泄露和加窗
  17. 【CPU】理解CPU
  18. macOS更换jupyter notebook默认浏览器
  19. 抽基类与PullToRefreshListView
  20. mercury添加虚拟服务器,mercury怎么设置虚拟服务器

热门文章

  1. C#中对 XML节点进行增、删、改、查
  2. Oracle 9i安全审计技术在电子政务中的应用
  3. 主成分分析法案例_主数据管理第一步——识别主数据
  4. 计算机二级考试基础知识文档,计算机二级公共基础知识(考试必考)
  5. 遍历系统进程和对应模块以及创建进程
  6. 是不是每一个型号的单片机都要学一遍
  7. ReentrantLock可重入锁的使用
  8. ‘grep‘ 不是内部或外部命令,也不是可运行的程序或批处理文件-adb shell ps | grep ***
  9. 2.5配置自定义HttpMessageConverters
  10. [渝粤教育] 西南科技大学 管理学原理 在线考试复习资料