Answers:
'+ var +'
以${var}
在一些模板字符串和无法弄清楚,为什么的IntelliJ不会完成更换。事实证明$
需要在替换中进行转义。
总之,你必须使用$1
来$n
进行更换反向引用。\1
语法仅适用于搜索中的反向引用。
在IntelliJ 2016中,应用程序内文档具有误导性。这是完整文档的更好报价:
如果需要在当前正则表达式之外的某个地方引用匹配的子字符串(例如,在另一个正则表达式中作为替换字符串),则可以使用美元符号($ num,其中num = 1..n)来检索它。
IntelliJ IDEA /参考/正则表达式语法参考
匹配子表达式并记住匹配项。如果需要在同一正则表达式中使用匹配的子字符串,则可以使用后向引用(\ num,其中num = 1..n)进行检索。如果需要在当前正则表达式之外的某个地方引用匹配的子字符串(例如,在“替换”字段中的另一个正则表达式中),则可以使用美元符号($ num,其中num = 1..n)来检索它。如果需要在子表达式中包含括号字符,请使用“(”或“)”。
(foo)
替换:$1bar