13

我似乎永远找不到任何关于正则表达式的文档来匹配捕获组作为模式的一部分。例如:

(\w\d\w):$1

..应该匹配a4b:a4b

$1不起作用,但我知道这是类似的东西。有人知道吗?

4

1 回答 1

15

在正则表达式模式中,对第一个捕获组的反向引用始终是\1,而不是$1

原因:$表示正则表达式中的“字符串结尾”(或行尾,取决于上下文)。

在替换模式(不是正则表达式)中,一些方言允许$1(例如 .NET、Java、Perl 和 JavaScript),一些允许\1(Python 和 Ruby),还有一些允许两者(PHP 和 JGSoft)。

编辑:由于您写道您找不到任何关于此的文档,请查看regular-expressions.info 上的这些概述:

于 2012-06-24T19:48:17.247 回答