Regex 仅当字符串不以开头时才选择正则表达式//

Regex 仅当字符串不以开头时才选择正则表达式//,regex,Regex,我有一个这样的文本(代码) function a() { console.log(1); // console.log(1.5) <-- skip this select only non commented console.log(2) } console.log('go') console.info('test') 你的正则表达式很接近,在玩了一段时间后,我得到了一个正则表达式,它似乎适用于你的例子 干杯 这是我能想出的最好的正则表达式(我自己也不擅长)

我有一个这样的文本(代码)

function a() {
    console.log(1);

    // console.log(1.5) <-- skip this select only non commented
    console.log(2)
}

console.log('go')
console.info('test')

你的正则表达式很接近,在玩了一段时间后,我得到了一个正则表达式,它似乎适用于你的例子

干杯

这是我能想出的最好的正则表达式(我自己也不擅长)。它比需要匹配的稍多,但它永远不会匹配带有
//console.log('stuff')的行

尝试使用以下正则表达式:

(?

试试这个正则表达式:

代码
控制台
之前添加一个
\s*
,以匹配具有缩进的单词

^(?!\/\/)\s*console\.(\w+).*

这不是python问题……或者如果是,python代码在哪里?我想使用python@cricket_007,即[regex]指导原则要求使用标签来表示您正在使用的正则表达式的味道。事实上,这个问题被否决而答案被否决是非常令人沮丧的。您的正则表达式中的前瞻没有实现任何效果,您最好删除它。这与
//console.log(1.5)
相匹配。(请注意,
//
前面没有空格)@siam的答案(和我的答案)仍然与
//console.log(1.5)
匹配,这可能是不需要的。
(?<!\/\/\s)console.*?\);?
^(?!\/\/)\s*console\.(\w+).*