常用的正则表达式
- 博客分类:
- 技术杂绘
日常工作中经常会遇到的一些验证、匹配、替换等字符串操作都会用到一些常用的正则表达式,如果要用的时候才去构造则会浪费不少时间,所以这里收集了一些常用的,方便日后工作的需要。 用途 正则表达式 例子 备注 非负整数 ^\d+$
^[1-9]\d*|0$ 0, 1, 2 正整数 + 0
正整数 ^[0-9]*[1-9][0-9]*$
^[1-9]\d*$ 1, 2, 3
非正整数 ^((-\d+)|(0+))$
^-[1-9]\d*|0$ 0, -1, -2 负整数 + 0
负整数 ^-[0-9]*[1-9][0-9]*$
^-[1-9]\d*$
整数 ^-?\d+$
^-?[1-9]\d*$
非负浮点数 ^\d+(\.\d+)?$
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.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]*))$
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$
非正浮点数 ^((-\d+(\.\d+)?)|(0+(\.0+)?))$
^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.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]*)))$
^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$
浮点数 ^(-?\d+)(\.\d+)?$
^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$
英文 ^[A-Za-z]+$
大写英文 ^[A-Z]+$
小写英文 ^[a-z]+$
英文和数字 ^[A-Za-z0-9]+$
英文、数字和下划线 ^\w+$
中文、英文、数字及下划线 ^[\u4e00-\u9fa5_a-zA-Z0-9]+$
Email地址 ^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$
^([w-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)|(( [w-]+.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(]?)$
^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
URL ^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)? $
[a-zA-z]+://[^\s]*
^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$
年-月-日 ^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9 ]{1}))|(3[0|1]))$
月/日/年 ^((0([1-9]{1}))|(1[1|2]))/(([0-2]([1-9]{1}))|(3[0| 1]))/(d{2}|d{4})$
电话号码 (d+-)?(d{4}-?d{7}|d{3}-?d{8}|^d{7,8})(-d+)?
\d{3}-\d{8}|\d{4}-\d{7}
(\d{3}-|\d{4}-)?(\d{8}|\d{7})?
^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$
^((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}- )?[1-9]\d{6,7}(\-\d{1,4})?$ 0511-4405222 或 021-87888822
手机号码 ^((\(\d{2,3}\))|(\d{3}\-))?13\d{9}$
电话区号 ^0\d{2,3}$
IP地址 ^(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d| 25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2 [0-4]d|25[0-5])$
\d+\.\d+\.\d+\.\d+
中文 [\u4e00-\u9fa5]
全角字符 [^uFF00-uFFFF]
双字节字符 [^\x00-\xff] 包括汉字在内
可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)
空白行 \n[\s| ]*\r
\n\s*\r 可以用来删除空白行
HTML标记 .*|
]*>.*?| 网上流传的版本太糟糕,上面这个也仅仅能匹配部分,对于复杂的嵌套标记依旧无能为力
首尾空白字符 (^\s*)|(\s*$)
^\s*|\s*$ 可以用来删除行首行尾的空白字符(包括空格、制表符、换页符等等),非常有用的表达式
帐号 ^[a-zA-Z][a-zA-Z0-9_]{4,15}$ 字母开头,允许5-16字节,允许字母数字下划线
密码 ^[a-zA-Z]\w{5,17}$ 字母开头,长度在6~18之间,只能包含字符、数字和下划线
腾讯QQ号 [1-9][0-9]{4,}
^[1-9]*[1-9][0-9]*$ 腾讯QQ号从10000开始
邮政编码 [1-9]\d{5}(?!\d)
身份证 ^\d{15}|\d{18}|\d{17}[xX]{1}$ 中国的身份证为15位或18位
数字 ^[0-9]*$
n位的数字 ^\d{n}$
至少n位的数字 ^\d{n,}$
m~n位的数字 ^\d{m,n}$
零和非零开头的数字 ^(0|[1-9][0-9]*)$
有两位小数的正实数 ^[0-9]+(.[0-9]{2})?$
有1~3位小数的正实数 ^[0-9]+(.[0-9]{1,3})?$
非零的正整数 ^\+?[1-9][0-9]*$
非零的负整数 ^\-[1-9][]0-9"*$
长度为3的字符 ^.{3}$
含有^%&’,;=?$\"等字符 [^%&’,;=?$\x22]+
12个月 ^(0?[1-9]|1[0-2])$
31天 ^((0?[1-9])|((1|2)[0-9])|30|31)$
SQL语句 ^(select|drop|delete|create|update|insert).*$
25、提取信息中的网络链接:(h|H)(r|R)(e|E)(f|F) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?
26、提取信息中的邮件地址:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
27、提取信息中的图片链接:(s|S)(r|R)(c|C) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?
28、提取信息中的IP地址:(\d+)\.(\d+)\.(\d+)\.(\d+)
29、提取信息中的中国手机号码:(86)*0*13\d{9}
30、提取信息中的中国固定电话号码:(\(\d{3,4}\)|\d{3,4}-|\s)?\d{8}
31、提取信息中的中国电话号码(包括移动和固定电话):(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14}
32、提取信息中的中国邮政编码:[1-9]{1}(\d+){5}
33、提取信息中的浮点数(即小数):(-?\d*)\.?\d+
34、提取信息中的任何数字:(-?\d*)(\.\d+)? 参考:
正则表达式30分钟入门教程
发表评论
-
C#对字符串加密解密
2012-07-06 09:52 933using System; using System.Co ... -
正则表达式基本技巧
2012-07-06 09:45 595以下所有正则表达式均为Python风格 1.模式开关 ... -
KingCMS接触之:源代码剖析
2012-07-06 09:30 615先从核心开始./system/core.class.php ... -
win7组件服务COM+应用程序编录错误解决办法
2012-07-03 13:43 836有时候在安装某个 ... -
怎么在DropdownList下面嵌入图片
2012-07-02 10:57 828flex4 的DropdownList下拉框组件本身并不支 ... -
Cairngorm示例:用户登录
2012-07-02 10:57 5671. Cairngorm简介 Cairngorm是 ... -
flash builder 制作 浏览器并 读写配制文件
2012-07-02 10:57 545flex/spark" xmlns:mx=&q ... -
[tamarin系列之3] ASC编译器命令行基础
2012-07-02 10:57 4231、ASC编译器简介 avmshell执行了abc文 ... -
LCDS-ES 与 Hibernate3,SQLServer的整合
2012-07-01 00:39 617其实LCDS与Hibernate3(目前最新版本好像是Hi ... -
ActionScript 3.0综合应用案例(图像识别+位图滤镜+Molehill)
2012-07-01 00:39 466本文是对ActionScript 3.0的一个综合应用案例 ... -
关于BlalzeDs RDS
2012-07-01 00:39 618BlazeDs 默认是不用RDS的,因为原因很简单,虽然用 ... -
为什么用*? 为什么不用*?
2012-07-01 00:39 577离开RoR有一段时间了,本来不想提些负面的东西,不过JE猎 ... -
flash特效原理:标签云
2012-07-01 00:39 680其实标签云是一个比较常见的特效类,在wondefl里 ...
相关推荐
主要为大家分享了最全的常用正则表达式大全,包括校验数字、字符、一些特殊的需求等等,感兴趣的小伙伴们可以参考一下。 很多不太懂正则的朋友,在遇到需要用正则校验数据时,往往是在网上去找很久,结果找来的还是...
在这个“常用正则表达式HTML,JAVA合集”中,我们主要关注的是HTML和Java环境下的正则表达式应用。 1. **HTML中的正则表达式**: 在HTML中,正则表达式通常用于表单验证,例如输入字段(如邮箱、电话号码、手机号码...
本压缩包"常用正则表达式.rar"提供了一些常见的正则表达式示例,主要包括校验数字、字符以及满足特殊需求的表达式。 1. **校验数字的表达式** - 验证整数:`^\d+$`,这将匹配任何由一个或多个数字组成的字符串。 ...
根据提供的文件信息,我们可以整理出一系列与正则表达式相关的知识点。这些知识点涵盖了从基本的数字验证到复杂的字符串匹配等多个方面。下面是详细的知识点总结: ### 基本概念 正则表达式是一种用于文本模式匹配...
在这个“常用正则表达式集合”中,你可能会找到许多实用的模板,帮助你在处理字符串时提高效率。下面我们将深入探讨正则表达式的基本概念、语法以及一些常见用法。 1. **基本概念** - **模式匹配**:正则表达式是...
### JS常用正则表达式知识点解析 #### 一、电子邮件地址验证 **功能说明:** 验证输入的字符串是否符合标准电子邮件地址格式。 **正则表达式:** ```javascript /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/ ``` **...
### 常用正则表达式搜索 #### 概述 正则表达式(Regular Expression,简称 REGEXP)是用于处理字符串的强大工具,在文本搜索、替换等操作中扮演着核心角色。Perl 作为一种广泛应用于文本处理的语言,其正则表达式...
### 常用正则表达式知识点解析 #### 一、正则表达式的定义与应用场景 正则表达式是一种强大的文本处理工具,它通过一种描述性的语言来匹配、查找、替换等操作一系列为了执行模式匹配而编写的字符组合。在实际开发...
javascript常用正则表达式大全,基本覆盖基本需求的正则表达式
正则表达式是一种强大的文本处理工具,用于匹配、查找、替换和分析字符串。它通过预定义的模式来识别和操作字符串中的数据。以下是一些常见的正则表达式及其用途: 1. 匹配中文字符:`[u4e00-u9fa5]` - 这个正则...
### Java常用正则表达式详解 #### 匹配腾讯QQ号 **正则表达式:** [1-9][0-9]{4,} **评注:** 腾讯QQ号从10000开始。 - **解析:** 此表达式确保了QQ号的第一个数字必须是非零数字(即1到9之间的任意一个),接着...
### 正则表达式-常用正则表达式大全 #### 一、正则表达式的概念与作用 正则表达式(Regular Expression),通常被简称为regex或regexp,是一种用于匹配字符串的强大工具。它广泛应用于文本搜索和替换操作,特别是...
### 正则表达式知识点详解 #### 一、校验数字的正则表达式 **1.1 数字** - **表达式:** `^[0-9]*$` - **解释:** 匹配任意数量(包括0个)的数字。 - **应用场景:** 用于验证输入是否全为数字。 **1.2 n位的数字**...
### 常用正则表达式 #### 1. 匹配中文字符 **正则表达式**: `[\u4e00-\u9fa5]` - **用途**: 用于匹配任何单个中文字符。 - **应用场景**: 在处理含有中文文本的数据时非常有用,例如检查用户输入是否包含中文字符等...
### 正则表达式知识点详解 #### 一、匹配中文字符 **正则表达式**:`[u4e00-u9fa5]` **评注**:此表达式用于匹配中文字符,在处理含有中文内容的数据时非常有用。由于中文字符在Unicode中的范围是从`\u4e00`到`\u9...
### Python之常用正则表达式知识点详解 #### 正则表达式基础概念 正则表达式是一种强大的文本处理工具,在Python编程中广泛应用于文本搜索、替换等操作。它能够帮助开发者快速定位、提取或者替换文本中的特定模式...
这篇博客“java常用正则表达式(转)”可能详细介绍了Java如何使用正则表达式进行各种操作。虽然没有具体的描述内容,但我们可以从标题和标签中推测,这篇博客可能涵盖了以下几个方面: 1. **正则表达式基础**: -...
常用正则表达式