在需要搜索和替换的代码中转义括号(Sublime Text2)
Posted
技术标签:
【中文标题】在需要搜索和替换的代码中转义括号(Sublime Text2)【英文标题】:Escaping parentheses in code that needs to be searched and replaced (Sublime Text2) 【发布时间】:2014-06-26 10:39:09 【问题描述】:我知道how to search and replace strings with Sublime Text2,但在使用转义字符时不知道。
对于以下 javascript 代码,有人可以告诉我如何在这里转义括号吗?
if(PRODUCTION) console.log("hello world");
var log=function(message)
if(!PRODUCTION) console.log(message);
;
以下内容不起作用,但似乎接近正确:
找到: if(PRODUCTION) console.log("(\w+)");
替换: log($1);
最终目标是仅在开发环境而非生产环境中进行控制台日志记录。
【问题讨论】:
【参考方案1】:用反斜杠转义特殊字符:
查找:if\(PRODUCTION\) console.log\((".+?")\);
替换:log($1)
注意\w+
不会匹配hello world
,因为\w
不匹配空格。我已将其更改为 .+?
,因此它将匹配任何内容,直到匹配双引号。
【讨论】:
我知道这一点在 OP 的代码中,但可以稍微改进一下,删除引号,以便替换对控制台日志的任何调用:console.log\((.+?)\)
(即 console.log(someVar);)
以上是关于在需要搜索和替换的代码中转义括号(Sublime Text2)的主要内容,如果未能解决你的问题,请参考以下文章