- ^ 匹配一个输入或一行的开头,
/^a/
匹配”an A”,而不匹配”An a” - $ 匹配一个输入或一行的结尾,
/a$/
匹配”An a”,而不匹配”an A” - 匹配前面元字符0次或多次,
/ba*/
将匹配b,ba,baa,baaa
- 匹配前面元字符0次或多次,
- 匹配前面元字符1次或多次,
/ba*/
将匹配ba,baa,baaa
- 匹配前面元字符1次或多次,
- ? 匹配前面元字符0次或1次,
/ba*/
将匹配b,ba - (x) 匹配 x 保存 x 在名为 $1…$9 的变量中
- x|y 匹配 x 或 y
- {n} 精确匹配 n 次
- {n,} 匹配 n 次以上
- {n, m} 匹配 n-m 次
[xyz]
字符集(character set),匹配这个集合中的任一一个字符(或元字符)[^xyz]
不匹配这个集合中的任何一个字符- [\b] 匹配一个退格符
- \b 匹配一个单词的边界
- \B 匹配一个单词的非边界
- \cX 这儿,X 是一个控制符,
/\cM/
匹配 Ctrl-M - \d 匹配一个字数字符,
/\d/ = /[0-9]/
- \D 匹配一个非字数字符,
/\D/ = /[^0-9]/
- \n 匹配一个换行符
- \r 匹配一个回车符
- \s 匹配一个空白字符,包括 \n, \r, \f, \t, \v 等
- \S 匹配一个非空白字符,等于
/[^\n\f\r\t\v]/
- \t 匹配一个制表符
- \v 匹配一个重直制表符
- \w 匹配一个可以组成单词的字符(alphanumeric,这是我的意译,含数字),包括下划线,如
[\w]
匹配 “$5.98” 中的 5,等于[a-zA-Z0-9]
- \W 匹配一个不可以组成单词的字符,如 [\W] 匹配 “$5.98” 中的 $,等于
[^a-zA-Z0-9]
- .(点符号):除了换行符之外的任意字符,等价于
[^\n]
(在2017年阿里巴巴春季实习生招聘的前端模拟笔试考察过这一知识点)
JavaScript:正则表达式
坚持原创技术分享,您的支持将鼓励我继续创作!