我正在搜索如下所示的模式组:
[httpUrl](httpUrl "httpUrl")
并将它们替换为:
<httpUrl>
有一点不同:所有 httpUrl
必须产生相同的字符串和 non-greedy 。
我已经开始使用 RegExr :以懒惰的方式匹配此模式和扭曲:
\[(http:\/\/.*?)\]\(\1 "\1"\)
但是我在查找替换表达式时遇到问题,因为这不起作用:
<\1>
我在这里缺少什么? (我希望它是如此简单,我会说 duh )。
最佳答案
虽然大多数正则表达式风格的基本功能具有大致相似的语法,但对于替换字符串的语法没有明确的标准。有些工具使用 \1
来引用字符串,其他工具使用 $1
等等。
当您使用 Notepad++ 时,您应该知道它使用 boost library对于其正则表达式实现,它使用 Boost-Extended format string用于替换模式。
特别是,第 n 个捕获组的占位符是 $n
。
关于javascript - 在 RegEx 搜索中多次重复相同的表达式,并且仅替换一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26441462/