在线测试工具:https://regexr-cn.com/
在线练习工具:https://codejiaonang.com/
[Pp]ython 匹配 “Python” 或 “python”。
rub[ye] 匹配 “ruby” 或 “rube”。
限定符
a* //a出现0次或多次 ab*c 可以匹配ac /abc /abbbbbbc
a+ //a出现1次或多次
a? //a出现0次或1次(可有可无) used? 可以匹配use 和used
a{6} //a出现6次
a{2,6} //a出现2-6次
a{2,} //a出现两次以上
或运算符
(a|b) //匹配a或者b
(ab)|(cd) //匹配ab或者cd
字符类
[abc] //匹配a或者b或者c
[a-c] //匹配a或者b或者c
[a-fA-F0-9] //匹配小写+大写英文字符以及数字
[^0-9] //匹配非数字字符
元字符
\d //匹配数字字符
\D //匹配非数字字符
\w //匹配单词字符(英文数字下划线)
\W //匹配非单词字符
\s //匹配空白字符(包括换行符、Tab)
\S //匹配非空白字符
. //匹配任意字符(换行符除外)
\bword\b //\b标注字符的边界(全字匹配)
^ //匹配行首
$ //匹配行尾
贪婪/懒惰匹配
<.+> //默认贪婪匹配“任意字符”
<.+?> //懒惰匹配“任意字符”
\r是回车符
\n是换行符
\转义字符
匹配邮箱:^[A-Za-z0-9]+@[a-zA-Z0-9]+.(com|cn)$
匹配IPv4 : ^(25[0-5]|2[0-4]\d|[0-1]?\d?\d)(\.(25[0-5]|2[0-4]\d|[0-1]?\d?\d)){3}$
匹配网址 :(http(s)?:..)?(www)?.[a-z0-9A-Z]\w{0,}.(com|cn|net|pub|top|org)
匹配IPv6: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$|^(([a-zA-Z]|[a-zA-Z][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*([A-Za-z]|[A-Za-z][A-Za-z0-9\-]*[A-Za-z0-9])$|^(?:(?:(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):){6})(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):(?:(?:[0-9a-fA-F]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:::(?:(?:(?:[0-9a-fA-F]{1,4})):){5})(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):(?:(?:[0-9a-fA-F]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})))?::(?:(?:(?:[0-9a-fA-F]{1,4})):){4})(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):(?:(?:[0-9a-fA-F]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):){0,1}(?:(?:[0-9a-fA-F]{1,4})))?::(?:(?:(?:[0-9a-fA-F]{1,4})):){3})(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):(?:(?:[0-9a-fA-F]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):){0,2}(?:(?:[0-9a-fA-F]{1,4})))?::(?:(?:(?:[0-9a-fA-F]{1,4})):){2})(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):(?:(?:[0-9a-fA-F]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):){0,3}(?:(?:[0-9a-fA-F]{1,4})))?::(?:(?:[0-9a-fA-F]{1,4})):)(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):(?:(?:[0-9a-fA-F]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):){0,4}(?:(?:[0-9a-fA-F]{1,4})))?::)(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):(?:(?:[0-9a-fA-F]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):){0,5}(?:(?:[0-9a-fA-F]{1,4})))?::)(?:(?:[0-9a-fA-F]{1,4})))|(?:(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):){0,6}(?:(?:[0-9a-fA-F]{1,4})))?::))))$
匹配区号3到4位,电话7到8位的固定电话号码:0\d{2,3}-[1-9]\d{6,7}
匹配11位手机号码:1[0-9]\d{9}
匹配身份证18位
[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]
匹配身份证15位
[1-9]\d{5}\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{2}[0-9Xx]
匹配中文数字字母
[\u4e00-\u9fa5a-z0-9A-Z]+
账号: 限 6-20 个字,小写字母、数字、下划线、减号组 合,不能以下划线或减号开头
[a-z0-9][\w-]{5,19}
昵称: 限 6-20 个字,汉字、小写字母、数字组合 [\u4e00-\u9fa5a-z0-9]{6,20}
电子邮件: aaa@bbb.ccc 格式 ^[A-Za-z0-9]+@[a-zA-Z0-9]+.[a-z]{2,3}$
QQ: qq 号肯定是数字,至少 5 位,不可能以 0 开头 [1-9]{5,}
密码: 8-20 个字,必须包含小写字母、大些字母、数字、特 殊符号 [a-zA-Z0-9\S]{8,20}
姓名: 限汉字,少数民族人士中点用星号*代替 [\u4e00-\u9fa5]+\*[\u4e00-\u9fa5]+
性别: 只能填男或女 男|女
身份证号: 18 位数字,不能以 0 开头,最后一位可以是大写 或小写 x
[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1- 9])|10|20|30|31)\d{3}[0-9Xx]