`

比较常用的几个正则表达式(匹配数字)

阅读更多

比较常用的几个正则表达式(匹配数字)

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

匹配中文字符的正则表达式: [\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个英文字母或者下划线组成的字符串

分享到:
评论

相关推荐

    比较常用的几个正则表达式匹配数字(收藏)

    匹配中文字符的正则表达式: [\u4e00-\u9fa5] 评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹配双字节字符(包括汉字在内):[^\x00-\xff] 评注:可以用来计算字符串的长度(一个双字节字符长度计2,...

    正则表达式

    它简单而且实用,是一个用于匹配字符串的模板,我们定义的任意的一个字符串都可以看成是一个正则表达式。 2、 String类也提供了几个和正则表达式有关的几个特殊方法 1) Boolean matches(String regex):判断该字符...

    正则表达式30分钟入门教程

    和通配符类似,正则表达式也是用来进行文本匹配的工具,只不过比起通配符,它能更精确地描述你的需求——当然,代价就是更复杂——比如你可以编写一个正则表达式,用来查找所有以0开头,后面跟着2-3个数字,然后是一...

    Python笔记—正则表达式

    Python笔记—正则表达式1. \d :匹配一个数字字符。等价于 [0-9]。2. \D:匹配一个非数字字符。...Python的正则表达式处理主要基于Python的re模块,这里主要基于几个常用的元字符做一些基本介绍和代码验证。代码块中省

    初学者常见正则表达式汇总.docx

    基本包含了初学者所遇到的所有正则表达式!例如: ^\d+$ //匹配非负整数(正整数 + 0)  ^[0-9]*[1-9][0-9]*$ //匹配正整数  ^((-\d+) ?(0+))$ //匹配非正整数(负整数 + 0)  ^[A-Za-z0-9]+$ //匹配由...

    一个java正则表达式工具类源代码.zip(内含Regexp.java文件)

    在这是junit测试单元类我就不提交了,在main()方法中有几个小测试,有兴趣自己玩吧. 这个工具类目前主要有25种正规表达式(有些不常用,但那时才仔细深入的研究了一下正规,写上瘾了,就当时能想到的都写了): 1....

    python使用正则表达式(Regular Expression)方法超详细

    一、导入re库 python使用正则表达式要导入re库。 import re 在re库中。正则表达式通常被用来检索查找、替换那些符合... 一个星号可以表示它前面的一个子表达式(普通字符、另一个或几个正则表达式符号)0次到无限

    Python使用正则表达式过滤或替换HTML标签的方法详解

    \d 匹配数字 \b 匹配单词的开始或结束 ^ 匹配字符串的开始 $ 匹配字符串的结束 \W 匹配任意不是字母,数字,下划线,汉字的字符 \S 匹配任意不是空白符的字符 \D 匹配任意非数字的字符 \B 匹配不是单词开头或结束的...

    抓图神器2016

    1. 从指定网页以及符合所设定的正则表达式匹配规则的二级页面中,下载所有图片到指定目录, 一张图下载完成后会执行检查,自动删除头像之类的小图。 图片以该图在网页源码中的名字命名,若指定目录中已存在同名...

    仿制简单的SQL select查询语句,用于对二维数组的查询,建立环境-Excel Vba,可移植到VB环境中

    ' 为了尽可能多地容纳各种运算关系,添加了正则表达式匹配运算, ' 在某个单一条件中,正则几乎可以容纳绝大部分的比对运算关系了。 ' 2、数字比较: ' 采用了将数字型字符串类型转换为数字之后再比较的方法,结果...

    抓图神器2016 with update 3

    1. 从指定网页以及符合所设定的正则表达式匹配规则的二级页面中,下载所有图片到指定目录, 一张图下载完成后会执行检查,自动删除头像之类的小图。 图片以该图在网页源码中的名字命名,若指定目录中已存在同名...

    Java-PHP-C#

    一个正则表达式,分为三个部分:分隔符,表达式和修饰符。 分隔符可以是除了特殊字符以外的任何字符(比如"/ !"等等),常用的分隔符是"/"。表达式由一些特殊字符(特殊字符详见下面)和非特殊的字符串组成,比如...

    PilotEdit支持超过400G的文件编辑

     &gt;可以把常用的正则表达式定义在脚本中,直接运行脚本即可替换文字  14、256位 AES加密/解密  &gt;用PilotEdit直接透明地编辑一个加密的文件  &gt;加密/解密多个文件和目录  &gt;加密/解密超过4G的文件  15、文件...

    PilotEdit Lite v12.7.0.zip

    可以把常用的正则表达式定义在脚本中,直接运行脚本即可替换文字 14. 256位 AES加密/解密 用PilotEdit直接透明地编辑一个加密的文件 加密/解密多个文件和目录 加密/解密超过4G的文件 15. 文件组 双击文件组...

    功能超级强悍的文本编辑器 PilotEdit 14.3.0 + x64 中文多语免费版.zip

    &gt;可以把常用的正则表达式定义在脚本中,直接运行脚本即可替换文字 14. 256位 AES加密/解密 &gt;用PilotEdit直接透明地编辑一个加密的文件 &gt;加密/解密多个文件和目录 &gt;加密/解密超过4G的文件 15. 文件组 &gt;双击文件组可以...

    MySql基本查询、连接查询、子查询、正则表达查询讲解

    8、使用正则表达式查询 什么是查询? 怎么查的? 数据的准备如下: [sql] view plain copy create table STUDENT( STU_ID int primary KEY, STU_NAME char(10) not null, STU_AGE smallint unsigned not null,...

    Swifter-Swift 开发者必备 Tips (第四版).zip

    虽然在 Swift 中没有内置的正则表达式支持,但是一个和正则匹配有些相似的特性其实是内置于 Swift 中的,那就是模式匹配。 当然,从概念上来说正则匹配只是模式匹配的一个子集,但是在 Swift 里现在的模式匹配还很...

Global site tag (gtag.js) - Google Analytics