正则表达式(RegExp:regular expression):一种用特殊符号编写的模式,描述一个或多个文本字符串。最适合用来搜索和操纵文本字符串。如,检查输入是否是邮箱。
简单列举常用的RegExp中特殊字符如下:
字 符 | 匹 配 |
在字面意义和特殊意义之间进行切换 | |
^ | 字符串的开头 |
$ | 字符串的结尾 |
* | 零次或多次 |
+ | 一次或多次 |
? | 零次或一次 |
. | 除换行符外的任何字符 |
单词边界 | |
B | 非单词边界 |
d | 0~9的任何数字(与[0-9]相同) |
D | 任何非数字 |
f | 换页符(form feed) |
换行符 | |
回车符 | |
s | 任何一个空白字符(与[ f v]相同) |
S | 任何一个非空白字符 |
制表符 | |
v | 垂直制表符 |
w | 任何字符、数字以及下划线(与[a-zA-Z0-9]相同) |
W | 除数字、字母及下划线外的其他字符 |
xnn | 十六进制数字nn定义的ASCII字符 |
onn | 八进制数字nn定义的ASCII字符 |
cX | 控制字符X |
[abcde] | 与其中任何字符匹配的字符集 |
[^abcde] | 字符补集,与其中任何字符都不匹配的字符集 |
[a-e] | 与其中的字符范围匹配的字符集 |
[] | 退格字符的字面意义(不同于) |
{n} | 前面的字符正好出现n次 |
{n,} | 前面的字符至少出现n次 |
{n,m} | 前面的字符出现n~m次 |
() | 一个组,可以在后面引用它 |
x|y | x或y |
正则表达式修饰符
修饰符 | 含 义 |
g | 搜索所有的匹配(全局),不只是第一处匹配 |
i | 进行不区分大小写的搜索 |
示例:
验证输入邮箱地址是否正确:re= /^w+([.-]?w+)*@w+ ([.-]?w+)*(.w{2,3})+$/;