共计 900 个字符,预计需要花费 3 分钟才能阅读完成。
最近在看正则指引这本书,记录一下常见的一些正则表达式,图片使用https://regexper.com生成
整数
[0-9]+
逗号分隔的整数
\b[0-9]{1,3}(,[0-9]{3})*\b
浮点数
(\+?(\d+|\.\d+|\d+\.\d+)|-?(\d+|\d+\.\d+))
0-255之间的数字
^([0-9]|[0-9]{2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])$
身份证
^[1-9]\d{14}(\d{2}[0-9x])?$
邮箱
^[-\w.]{0,64}@([a-zA-Z0-9]{1,63}\.)*[-a-zA-Z0-9]{1,63}$
固定电话
(\(?0[1-9]{2,3}\)?-?)?[1-9][0-9]\{6,7}(-[0-9]{1,6})?
邮编
[1-9][0-9]{5}
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])
“
手机号
(0|\+86)?(13[0-9]|15[0-356]|18[025-9])\d{8}
成对的html tag
如<code>test
<([^>]+)>[\s\S]*?<\ \1=""></\></([^>
a
<a\s+href\s*=\s*["']?([^"'\s]+)["']?>([^<]+)<\ a=""></]+)<\></a\s+href\s*=\s*["']?([^"'\s]+)["']?>
<head>([^>]+)<\ head=""></\></head>
图片
<img\s[^>]*?src=['"]?([^"']+)["']?[^>]*></img\s[^>
附:正则指引思维导图