| 正则表达式参考 |
| 简介 |
| 目录 |
| 快速参考 |
| 字符 |
| 基本功能 |
| 字符类 |
| 速记 |
| 锚 |
| 词边界 |
| 量词 |
| Unicode |
| 捕获组和反向引用 |
| 命名组和反向引用 |
| 特殊组 |
| 模式修饰符 |
| 递归和平衡组 |
| 替换参考 |
| 字符 |
| 匹配文本和反向引用 |
| 上下文和大小写转换 |
| 条件 |
| 此网站上的更多内容 |
| 简介 |
| 正则表达式快速入门 |
| 正则表达式教程 |
| 替换字符串教程 |
| 应用程序和语言 |
| 正则表达式示例 |
| 正则表达式参考 |
| 替换字符串参考 |
| 书评 |
| 可打印 PDF |
| 关于此网站 |
| RSS Feed 和博客 |
| 功能 | 语法 | 描述 | 示例 | JGsoft | .NET | Java | Perl | PCRE | PCRE2 | PHP | Delphi | R | JavaScript | VBScript | XRegExp | Python | Ruby | std::regex | Boost | Tcl ARE | POSIX BRE | POSIX ERE | GNU BRE | GNU ERE | Oracle | XML | XPath |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 贪婪量词 | ?(问号) | 使前一项可选。贪婪,因此如果可能,可选项将包含在匹配项中。 | abc? 匹配 abc 或 ab | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | ECMA 扩展 egrep awk | ECMA 扩展 egrep awk | 是 | 否 | 是 | 否 | 是 | 是 | 是 | 是 |
| 贪婪量词 | \? | 使前一项可选。贪婪,因此如果可能,可选项将包含在匹配项中。 | abc\? 匹配 abc 或 ab | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 是 | 否 | 否 | 否 | 否 |
| 惰性量词 | ?? | 使前一项可选。惰性,因此如果可能,可选项将排除在匹配项之外。 | abc?? 匹配 ab 或 abc | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | ECMA | ECMA | 是 | 否 | 否 | 否 | 否 | 10gR2 | 否 | 是 |
| 独占量词 | ?+ | 使前一项可选。独占,因此如果可以匹配可选项,则即使正则表达式的其余部分失败,量词也不会放弃其匹配项。 | abc?+c 匹配 abcc 但不匹配 abc | 是 | 否 | 是 | 5.10 | 是 | 是 | 是 | 是 | 是 | 否 | 否 | 否 | 否 | 1.9 | 否 | ECMA 1.42–1.83 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 |
| 贪婪量词 | *(星号) | 重复前一项零次或多次。贪婪,因此在尝试前一项匹配较少时的排列之前,将尽可能多地匹配项,直到前一项完全不匹配为止。 | ".*" 在 abc "def" "ghi" jkl 中匹配 "def" "ghi" | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 |
| 惰性量词 | *? | 重复前一项零次或多次。惰性,因此引擎首先尝试跳过前一项,然后再尝试前一项匹配不断增加时的排列。 | ".*?" 在 abc "def" "ghi" jkl 中匹配 "def" 和 "ghi" | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | ECMA | ECMA | 是 | 否 | 否 | 否 | 否 | 10gR2 | 否 | 是 |
| 独占量词 | *+ | 重复前一项零次或多次。独占,因此将尽可能多地匹配项,而不尝试任何匹配较少的排列,即使正则表达式的其余部分失败。 | ".*+" 永远无法匹配任何内容 | 是 | 否 | 是 | 5.10 | 是 | 是 | 是 | 是 | 是 | 否 | 否 | 否 | 否 | 1.9 | 否 | ECMA 1.42–1.83 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 |
| 贪婪量词 | +(加号) | 重复前一项一次或多次。贪婪,因此在尝试前一项匹配较少时的排列之前,将尽可能多地匹配项,直到前一项仅匹配一次为止。 | ".+" 在 abc "def" "ghi" jkl 中匹配 "def" "ghi" | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | ECMA 扩展 egrep awk | ECMA 扩展 egrep awk | 是 | 否 | 是 | 否 | 是 | 是 | 是 | 是 |
| 贪婪量词 | \+ | 重复前一项一次或多次。贪婪,因此在尝试前一项匹配较少时的排列之前,将尽可能多地匹配项,直到前一项仅匹配一次为止。 | ".\+" 在 abc "def" "ghi" jkl 中匹配 "def" "ghi" | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 是 | 否 | 否 | 否 | 否 |
| 惰性量词 | +? | 重复前一项一次或多次。惰性,因此引擎首先仅匹配前一项一次,然后再尝试前一项匹配不断增加时的排列。 | ".+?" 在 abc "def" "ghi" jkl 中匹配 "def" 和 "ghi" | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | ECMA | ECMA | 是 | 否 | 否 | 否 | 否 | 10gR2 | 否 | 是 |
| 独占量词 | ++ | 重复前一项一次或多次。独占,因此将尽可能多地匹配项,而不尝试任何匹配较少的排列,即使正则表达式的其余部分失败。 | ".++" 永远无法匹配任何内容 | 是 | 否 | 是 | 5.10 | 是 | 是 | 是 | 是 | 是 | 否 | 否 | 否 | 否 | 1.9 | 否 | ECMA 1.42–1.83 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 |
| 固定量词 | {n} 其中 n 是一个整数 >= 1 | 重复前一个项目恰好 n 次。 | a{3} 匹配 aaa | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | ECMA 扩展 egrep awk | ECMA 扩展 egrep awk | 是 | 否 | 是 | 否 | 是 | 是 | 是 | 是 |
| 贪婪量词 | {n,m} 其中 n >= 0 且 m >= n | 重复前一个项目 n 到 m 次。贪婪,因此在将重复次数减少到 n 次之前,会尝试重复 m 次。 | a{2,4} 匹配 aaaa、aaa 或 aa | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | ECMA 扩展 egrep awk | ECMA 扩展 egrep awk | 是 | 否 | 是 | 否 | 是 | 是 | 是 | 是 |
| 贪婪量词 | {n,} 其中 n >= 0 | 重复前一个项目至少 n 次。贪婪,因此在尝试前一个项目的匹配次数更少的排列之前,将尽可能多地匹配项目,直到前一个项目仅匹配 n 次。 | a{2,} 在 aaaaa 中匹配 aaaaa | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | ECMA 扩展 egrep awk | ECMA 扩展 egrep awk | 是 | 否 | 是 | 否 | 是 | 是 | 是 | 是 |
| 贪婪量词 | {,m} 其中 m >= 1 | 重复前一个项目 0 到 m 次。贪婪,因此在将重复次数减少到 0 次之前,会尝试重复 m 次。 | a{,4} 匹配 aaaa、aaa、aa、a 或空字符串 | V2 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 是 | 1.9 | 否 | 否 | 否 | 否 | 否 | 否 | 是 | 否 | 否 | 否 |
| 固定量词 | \{n\} 其中 n 是一个整数 >= 1 | 重复前一个项目恰好 n 次。 | a\{3\} 匹配 aaa | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 基本 grep | 基本 grep | 否 | 是 | 否 | 是 | 否 | 否 | 否 | 否 |
| 贪婪量词 | \{n,m\} 其中 n >= 0 且 m >= n | 重复前一个项目 n 到 m 次。贪婪,因此在将重复次数减少到 n 次之前,会尝试重复 m 次。 | a\{2,4\} 匹配 aaaa、aaa 或 aa | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 基本 grep | 基本 grep | 否 | 是 | 否 | 是 | 否 | 否 | 否 | 否 |
| 贪婪量词 | \{n,\} 其中 n >= 0 | 重复前一个项目至少 n 次。贪婪,因此在尝试前一个项目的匹配次数更少的排列之前,将尽可能多地匹配项目,直到前一个项目仅匹配 n 次。 | a\{2,\} 在 aaaaa 中匹配 aaaaa | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 基本 grep | 基本 grep | 否 | 是 | 否 | 是 | 否 | 否 | 否 | 否 |
| 贪婪量词 | \{,m\} 其中 m >= 1 | 重复前一个项目 0 到 m 次。贪婪,因此在将重复次数减少到 0 次之前,会尝试重复 m 次。 | a\{,4\} 匹配 aaaa、aaa、aa、a 或空字符串 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 是 | 否 | 否 | 否 | 否 |
| 惰性量词 | {n,m}? 其中 n >= 0 且 m >= n | 重复前一个项目 n 到 m 次。惰性,因此在将重复次数增加到 m 次之前,会尝试重复 n 次。 | a{2,4}? 匹配 aa、aaa 或 aaaa | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | ECMA | ECMA | 是 | 否 | 否 | 否 | 否 | 10gR2 | 否 | 是 |
| 惰性量词 | {n,}? 其中 n >= 0 | 重复前一个项目 n 次或更多次。惰性,因此引擎首先匹配前一个项目 n 次,然后再尝试前一个项目匹配次数不断增加的排列。 | a{2,}? 在 aaaaa 中匹配 aa | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | ECMA | ECMA | 是 | 否 | 否 | 否 | 否 | 10gR2 | 否 | 是 |
| 惰性量词 | {,m}? 其中 m >= 1 | 重复前一项 0 到 m 次。惰性,因此在将重复次数增加到 m 次之前,会尝试重复 0 次。 | a{,4}? 匹配空字符串、a、aa、aaa 或 aaaa | V2 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 是 | 1.9 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 |
| 独占量词 | {n,m}+ 其中 n >= 0 且 m >= n | 重复前一项 n 到 m 次。占有,因此会尽可能多地匹配 m 个项目,而不会尝试任何匹配次数较少的排列,即使正则表达式的其余部分失败。 | a{2,4}+a 匹配 aaaaa 但不匹配 aaaa | 是 | 否 | 是 | 5.10 | 是 | 是 | 是 | 是 | 是 | 否 | 否 | 否 | 否 | 否 | 否 | ECMA 1.42–1.83 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 |
| 独占量词 | {n,}+ 其中 n >= 0 | 重复前一项 n 次或更多次。占有,因此会尽可能多地匹配项目,而不会尝试任何匹配次数较少的排列,即使正则表达式的其余部分失败。 | a{2,}+a 从不匹配任何内容 | 是 | 否 | 是 | 5.10 | 是 | 是 | 是 | 是 | 是 | 否 | 否 | 否 | 否 | 否 | 否 | ECMA 1.42–1.83 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 |
| 功能 | 语法 | 描述 | 示例 | JGsoft | .NET | Java | Perl | PCRE | PCRE2 | PHP | Delphi | R | JavaScript | VBScript | XRegExp | Python | Ruby | std::regex | Boost | Tcl ARE | POSIX BRE | POSIX ERE | GNU BRE | GNU ERE | Oracle | XML | XPath |