0

有没有办法在正则表达式中引用捕获组?

例如,如果您有 2 个字符串,则其中一个是:

Person: Name is Bob. Type: Person

和另一个:

Animal: Name is Jupiter. Type: Animal

你能做这样的事情:

(Person|Animal): Name is (.+). Type: $1

这个想法是,使用第一个捕获组的结果来确定它是人还是动物,然后将结果放在哪里$1,完成句子。

如果不是用 $1,那么可以用任何其他操作员来完成这样的事情吗?

4

1 回答 1

2

如果您指的是 PCRE,您可以在模式 ( '\1', &c.) 或命名的 ( '(?P=pattern-name)') 中使用编号的反向引用。

于 2012-11-17T00:29:09.383 回答