常见正则表达式

最近在看正则指引这本书,记录一下常见的一些正则表达式,图片使用https://regexper.com生成

整数

[0-9]+

http://ggbond.qiniudn.com/2016-10-13%2019:35:52.png

逗号分隔的整数

\b[0-9]{1,3}(,[0-9]{3})*\b

http://ggbond.qiniudn.com/2016-10-13%2019:40:05.png

浮点数

(\+?(\d+|\.\d+|\d+\.\d+)|-?(\d+|\d+\.\d+))

http://ggbond.qiniudn.com/2016-10-13%2019:20:37.png

0-255之间的数字

^([0-9]|[0-9]{2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])$
http://ggbond.qiniudn.com/255.png

身份证

^[1-9]\d{14}(\d{2}[0-9x])?$
http://ggbond.qiniudn.com/shenfz.png

邮箱

^[-\w.]{0,64}@([a-zA-Z0-9]{1,63}\.)*[-a-zA-Z0-9]{1,63}$

http://ggbond.qiniudn.com/email.png

固定电话

(\(?0[1-9]{2,3}\)?-?)?[1-9][0-9]\{6,7}(-[0-9]{1,6})?
http://ggbond.qiniudn.com/2016-10-13%2019:46:08.png

邮编

[1-9][0-9]{5}
http://ggbond.qiniudn.com/2016-10-13%2019:47:35.png

ISBN

((ISBN(-13)?:?\s)?97[89][-\s]?[0-9][-\s]?[0-9]{3}[-\s]?[0-9]{5}[-\s]?[0-9]|(ISBN(-10)?:?\s)?[0-9][-\s]?[0-9]{3}[-\s]?[0-9]{5}[-\s]?[0-9x])

http://ggbond.qiniudn.com/2016-10-13%2019:55:10.png

``

手机号

(0|\+86)?(13[0-9]|15[0-356]|18[025-9])\d{8}
http://ggbond.qiniudn.com/tel.png

成对的html tag

<code>test</code>

<([^>]+)>[\s\S]*?<\/\1>

http://ggbond.qiniudn.com/tag.png

a

<a\s+href\s*=\s*["']?([^"'\s]+)["']?>([^<]+)<\/a>

http://ggbond.qiniudn.com/a.png

<head>([^>]+)<\/head>

http://ggbond.qiniudn.com/head.png

图片

<img\s[^>]*?src=['"]?([^"']+)["']?[^>]*>

http://ggbond.qiniudn.com/img11.png

附:正则指引思维导图

http://ggbond.qiniudn.com/%E6%AD%A3%E5%88%99%E6%8C%87%E5%BC%95.png

转载注明出处或者联系作者
Fork me on GitHub