使用Sublime的正则表达式

时间:2012-09-27 09:01:43

标签: regex sublimetext2

使用我选择的文本编辑器Sublime 2,我想搜索具有未注释警报的代码。所以我需要一个正则表达式找到“警报”但不是“// alert”或“// alert”。我不知道如何反转,然后结合两个结果。 Sublime Text使用正则表达式的Boost语法。谢谢你的帮助。

2 个答案:

答案 0 :(得分:9)

您可以搜索不在//之前的文字,因此

(?<!\/\/\s?)alert

编辑: 如果编辑器不支持变量lookbehinds,则必须在不同的lookbehinds中指定所有可能性

(?<!\/\/\s)(?<!\/\/)alert

答案 1 :(得分:6)

试试这个:

(?<!//)(?<!// )alert

Boost语法基于Pearl RegExp。因此,应支持负面的后视(?<!text)。在这个例子中,我使用负向lookbehind两次(有和没有空格),因为lookbehind文本必须是固定长度。

您可以在此处阅读有关RegExp中的lookaraound功能的更多信息:
http://www.regular-expressions.info/lookaround.html