2015-04-15 88 views
16

我想在查找替换如何使用正则表达式

#{account_nbr} 

{{account_nbr}} 

替换WebStorm/PhpStorm,我尝试这样做:

\#\{()\w+\1\} 

,并在更换,这个:

{{\$1}} 

发现似乎工作,但我无法正确得到反向引用。

怎么了?

回答

31

你不需要任何反向引用你使用它们的方式。

这是你可以使用正则表达式:

\#\{(\w+)\} 

更换应

{{$1}} 

当您使用\$,文字$使用,而不是实际的反向引用。

Regex demo

+0

http://i.imgur.com/WhBQMmO.png是仅用来存储字代替明确反向引用。你的正则表达式正常工作=) – funivan

+0

太好了。感谢你及时的答复!这是否意味着反向引用是括号内的所有内容? – ndemoreau

+2

什么是内部*非转义*括号称为*捕获组*(http://www.regular-expressions.info/brackets.html)。当我们在正则表达式本身中使用'1',或者在替换字符串中使用'$ 1'时,它是一个* back-reference *(http://www.regular-expressions.info/refreplacebackref.html)。 –