| 字符类 | 说明 |
|---|---|
| . | 与除 /n 之外的任何字符匹配。如果已用 Singleline 选项做过修改,则句点字符将与任何字符匹配。有关详细信息,请参见正则表达式选项。 |
| [aeiou] | 与指定字符集中包含的任何单个字符匹配。 |
| [^aeiou] | 与不在指定字符集中的任何单个字符匹配。 |
| [0-9a-fA-F] | 使用连字号 (–) 允许指定连续字符范围。 |
| /p{name} | 与 {name} 指定的命名字符类中的任何字符匹配。支持的名称为 Unicode 组和块范围。例如,Ll、Nd、Z、IsGreek、IsBoxDrawing。 |
| /P{name} | 与在 {name} 中指定的组和块范围中未包含的文本匹配。 |
| /w | 与任何单词字符匹配。等效于 Unicode 字符类别 [/p{Ll}/p{Lu}/p{Lt}/p{Lo}/p{Nd}/p{Pc}]。如果用 ECMAScript 选项指定了符合 ECMAScript 的行为,则 /w 等效于 [a-zA-Z_0-9]。 |
| /W | 与任何非单词字符匹配。等效于 Unicode 类别 [^/p{Ll}/p{Lu}/p{Lt}/p{Lo}/p{Nd}/p{Pc}]。如果用 ECMAScript 选项指定了符合 ECMAScript 的行为,则 /W 等效于 [^a-zA-Z_0-9]。 |
| /s | 与任何空白字符匹配。等效于 Unicode 字符类别 [/f/n/r/t/v/x85/p{Z}]。如果用 ECMAScript 选项指定了符合 ECMAScript 的行为,则 /s 等效于 [ /f/n/r/t/v]。 |
| /S | 与任何非空白字符匹配。等效于 Unicode 字符类别 [^/f/n/r/t/v/x85/p{Z}]。如果用 ECMAScript 选项指定了符合 ECMAScript 的行为,则 /S 等效于 [^ /f/n/r/t/v]。 |
| /d | 与任何十进制数字匹配。等效于 /p{Nd}(对于 Unicode 类别)和 [0-9](对于非 Unicode 类别)ECMAScript 行为。 |
| /D | 与任何非数字匹配。等效于 /P{Nd}(对于 Unicode 类别)和 [^0-9](对于非 Unicode 类别)ECMAScript 行为。 |
| 限定符 | 说明 |
|---|---|
| * | 指定零个或更多个匹配;例如 /w* 或 (abc)*。等效于 {0,}。 |
| + | 指定一个或多个匹配;例如 /w+ 或 (abc)+。等效于 {1,}。 |
| ? | 指定零个或一个匹配;例如 /w? 或 (abc)?。等效于 {0,1}。 |
| {n} | 指定恰好 n 个匹配;例如 (pizza){2}。 |
| {n,} | 指定至少 n 个匹配;例如 (abc){2,}。 |
| {n,m} | 指定至少 n 个但不多于 m 个匹配。 |
| *? | 指定尽可能少地使用重复的第一个匹配(等效于 lazy *)。 |
| +? | 指定尽可能少地使用重复但至少使用一次(等效于 lazy +)。 |
| ?? | 指定使用零次重复(如有可能)或一次重复 (lazy ?)。 |
| {n}? | 等效于 {n} (lazy {n})。 |
| {n,}? | 指定尽可能少地使用重复但至少使用 n 次 (lazy {n,})。 |
| {n,m}? | 指定介于 n 次和 m 次之间、尽可能少地使用重复 (lazy {n,m})。 |
本文详细介绍了正则表达式中的各种字符类及其用法,包括通用字符类如.、[aeiou]、[0-9a-fA-F]等,以及特殊字符类如/p{name}

被折叠的 条评论
为什么被折叠?



