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