正则表达式
符号概述
分类 | 符号 | 用法 | 示例 |
---|---|---|---|
元字符 | ^ | 以 ***开头 | |
$ | 以 ***结尾 | ||
d | 匹配数字 | ^\d\d\d$ 匹配三个全部都为数字 | |
s | 匹配任意的空白符 | ||
. | 匹配除换行符以外的任意字符 | ||
w | 匹配字母或数字或下划线或汉字 | \d\w\s 匹配第一个字符为数字,第二个字符为字母或数字 、或下划线或汉字,第三字符为空格的字符串 | |
b | 匹配单词的开始或结束 | \bOlive\b 匹配单词Olive | |
\ | 转义 | ||
重复限定符 | * | 次数,至少一次 | |
+ | 至少1次 | ||
? | 0次 或者 1次 | ||
{n}{n,}{n,m} | 重复n次;n活更多次,n到m次 | ^\d{8,11}$ 匹配重复8-11次数字 | |
| | 条件或 | ||
[ ] | 区间 | 限定0到9 可以写成[0-9] 限定A-Z 写成[A-Z] 限定某些数字 [165] | |
反义字符 | \W | 任意不是字母,数字,下划线,汉字的 | |
\S | 匹配任意不是空白符的字符 | ||
\D | 匹配任意非数字的字符 | ||
\B | 匹配不是单词开头或结束的位置 | ||
[^x] | 匹配除了x以外的任意字符 | ||
[^aeiou] | 匹配除了aeiou这几个字母以外的任意 | ||
分组 | () | 括号中的内容作为一个整体 |
例子
8位数字的号码:^d{8}$
匹配以a开头的,0个或多个b结尾的字符串 ^ab*$
包含 ,后面任意字符,并且) 结尾 \,.*?\)$
只能输入数字:"^[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}$"。
只能输入由26个英文字母组成的字符串:"^[A-Za-z]+$"。
只能输入由26个大写英文字母组成的字符串:"^[A-Z]+$"。
只能输入由26个小写英文字母组成的字符串:"^[a-z]+$"。
只能输入由数字和26个英文字母组成的字符串:"^[A-Za-z0-9]+$"。
只能输入由数字、26个英文字母或者下划线组成的字符串:"^"w+$"。
验证用户密码:"^[a-zA-Z]"w{5,17}$"正确格式为:以字母开头,长度在6~18之间,只能包含字符、数字和下划线。
验证是否含有^%&’,;=?$""等字符:"[^%&’,;=?$"x22]+"。
只能输入汉字:"^["u4e00-"u9fa5]{0,}$"
验证Email地址:"/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/"。
验证InternetURL:"^http://(["w-]+".)+["w-]+(/["w-./?%&=]*)?$"。
验证电话号码:"^("("d{3,4}-)|"d{3.4}-)?"d{7,8}$"正确格式为:"XXX-XXXXXXX"、"XXXX- XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXXXXX"。
验证身份证号(15位或18位数字):"^"d{15}|"d{18}$"。
验证一年的12个月:"^(0?[1-9]|1[0-2])$"正确格式为:"01"~"09"和"1"~"12"。
验证一个月的31天:"^((0?[1-9])|((1|2)[0-9])|30|31)$"正确格式为;"01"~"09"和"1"~"31"。