正则表达式中的特殊字符可以分为断言、字符类、组和范围、量词以及Unicode属性转义这几类。
特殊字符分类 | 中文 | 描述 |
---|---|---|
Assertions |
断言 |
表示一个匹配在某些条件下发生。断言包含先行断言、后行断言和条件表达式。 |
Character Classes |
字符类 |
区分不同类型的字符,例如区分字母和数字。 |
Groups and Ranges |
组和范围 |
表示表达式字符的分组和范围。 |
Quantifiers |
量词 |
表示匹配的字符或表达式的数量。 |
Unicode Property Escapes |
Unicode 属性转义 |
基于 unicode 字符属性区分字符。例如大写和小写字母、数学符号和标点。 |
字符/结构 | 对应文章 |
---|---|
\, ., \cX, \d, \D, \f, \n, \r, \s, \S, \t, \v, \w, \W, \0, \xhh, \uhhhh, \uhhhhh,[\b] | 字符类 |
^, $, x(?=y), x(?!y), (?<=y)x, (?<!y)x, \b,\B | 断言 |
(x), (?:x), (?<Name>x), x|y, [xyz], [^xyz],\Number | 组和范围 |
*, +, ?, , ,x{n}x{n,}x{n,m} | 量词 |
\p{UnicodeProperty}, \P{UnicodeProperty} | Unicode 属性转义 |
Js正则表达式最核心的就是特殊字符的运用,这块熟悉了,就能解决各种各样的字符串处理需求。 接下来的内容,就是对这些分类的具体介绍