joh*_*ode 1 regex vim escaping
我偶然发现了一个案例,我不得不删除文件中特定正则表达式模式周围的引号,我得出的直接结论是使用 vim 的搜索和替换 util 并转义原始模式和替换模式中的每个特殊字符。
这有效(经过一些修补),但它让我想知道是否有更好的方法来做这些事情。
原始正则表达式(引用):'/^\//'替换为/^\//
以及我使用的搜索/替换模式:
s/'\/\^\\\/\/'/\/\^\\\/\//g
谢谢!
您几乎可以使用任何字符作为正则表达式分隔符。这将使您不必逃避正斜杠。您还可以使用组来提取正则表达式并避免重新键入它。例如,试试这个:
:s#'\(\\^\\//\)'#\1#
Run Code Online (Sandbox Code Playgroud)
我不知道这是否适用于您的情况,因为您列出的示例和您提供的正则表达式不匹配。(您列出的正则表达式将匹配'/^\//',而不是'\^\//'。我的将匹配后者。根据需要进行调整。)