常用正则表达式整理

2025-10-26 11:53:43

1、匹配Email

1.

\w[-\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+\.)+[A-Za-z]{2,14}

2.

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

常用正则表达式整理

常用正则表达式整理

2、IPv4 匹配

1. 

\d{0,3}\.\d{0,3}\.\d{0,3}\.\d{0,3}

2. 

(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)

3.

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

常用正则表达式整理

常用正则表达式整理

3、匹配中文汉字,两个unicode值正好是Unicode表中的汉字的头和尾。

1.单个汉字

[\u4e00-\u9fa5]

2.多个汉字

[\u4e00-\u9fa5]+

常用正则表达式整理

常用正则表达式整理

4、匹配双字节字符,包括汉字

1.单个

[^\x00-\xff]

2.多个

[^\x00-\xff]+

5、匹配网址

1.

[a-zA-z]+://[^\s]*

2.

^((https|http|ftp|rtsp|mms)?:\/\/)[^\s]+

3.

(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?

常用正则表达式整理

常用正则表达式整理

常用正则表达式整理

6、匹配身份证

1. 18位身份证号

(\d{6})(\d{4})(\d{2})(\d{2})(\d{3})([0-9]|X)

2.15位 或 18 位身份证号

\d{17}[0-9Xx]|\d{15}

7、匹配手机号

(13\d|14[579]|15[^4\D]|17[^49\D]|18\d)\d{8}

8、日期匹配,格式为 年-月-日

1.简单匹配,匹配格式为 yyyy-mm-dd 或 yyyy/mm/dd 或 yyyy.mm.dd

\d{4}(\-|\/|.)\d{1,2}\1\d{1,2}

这个表达式只是简单匹配 4位数字-2位数字-2位数字 这种格式。未做较多验证。

2.严格匹配,匹配格式为 yyyy-mm-dd,但这个表达式还有个问题,其闰年并未严格匹配。

([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8])))

其中第一段 [0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3} 分解了就是 

[0-9]{3}[1-9] 这个代表前3位是0-9,第4位是1-9 

[0-9]{2}[1-9][0-9]{1} 这个代表前2位是0-9,第3位是1-9,第4位是0-9

[0-9]{1}[1-9][0-9]{2} 这个代表第一位是0-9,第二位是1-9,第3-4为是0-9

[1-9][0-9]{3} 这个代表第一位是1-9,后3位是0-9

匹配代表年份 0001 到 9999 4位数字 

第二段 (((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|((0[469]|11) 分解为:

(0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]) 

表示 月份 01,03,05,07,08,10,12,日期 01-09,10-19,20-29,30-31

或者

(0[469]|11)-(0[1-9]|[12][0-9]|30)

表示 月份 04,06,09,11 日期 01-09,10-19,20-29,30

或者

02-(0[1-9]|[1][0-9]|2[0-8])

表示月份 02, 日期 01-09,10-19,20-28

3. 严格匹配,匹配格式为 yyyy-mm-dd,包括匹配闰年。

(([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))-02-29)

常用正则表达式整理

常用正则表达式整理

常用正则表达式整理

9、时间匹配

([01]?\d|2[0-3]):[0-5]?\d:[0-5]?\d

10、匹配 HTML 标签

1. html 标签

<(.*)(.*)>.*<\/\1>|<(.*) \/>

<([a-z]+)([^<]+)*(?:>(.*)<\/\1>|\s+\/>

2. 匹配 script 标签

<script(.*?)</script>

3. 匹配 iframe 标签

<iframe(.*?)</iframe>

常用正则表达式整理

11、数据匹配

1.匹配正整数

^[1-9]\d*$  

2.匹配负数

 ^-[1-9]\d*$ 

3.匹配整数

^-?[1-9]\d*$

4.匹配正整数 和 0

^[1-9]\d*|0$

5.匹配负整数 和 0

^-[1-9]\d*|0$

6.匹配正浮点数

^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$

7.匹配负浮点数

^-[1-9]\d*\.\d*|-0\.\d*[1-9]\d*$

12、匹配电驴链接

ed2k://\|file\|([^\|]+?)\|(\d+?)\|([0-9a-zA-Z]{32})\|((?:/\|sources,([^\s\|]+?)\||h=([0-9a-zA-Z]{32})\||s=([^\s\|]+?)\||p=([^\s\|]+?)\|)*)/

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢