2015-12-21 68 views
-2

我想拿出一個javascript正則表達式的new在這個例子中匹配開始:JavaScript的正則表達式中的行匹配字與雙斜線

// with new operator 

但不是在這個例子中:

with the new operator 

所以在任何以//開頭的行中都應該匹配新的但不是雙斜槓。

我試圖改變這一正則表達式到我需要什麼,但我不能得到正確

^(?:(?!"$).)([0-9]+)(?!")$ 

我會怎麼做呢?

+1

a ='// with new operator'a.search('//') – rkatkam

+0

您的示例正則表達式與您的要求無關 –

+0

好吧,它有點兒不對。該示例搜索數字之前沒有「,並沒有跟隨」...我正在尋找字符串前不是//,arent我? – user3629892

回答

1

你有沒有試過類似的東西?

/^\/\/\s*(\w+)/gmi 

,如果你想在詞的字面匹配你能做到這樣:

function pickNew(s) { 
 
    var regex = /^\/\/\s*\w+\s*(new)/gmi; 
 
    var result = regex.exec(s); 
 
    
 
    
 
    return result && result.pop() || null; 
 
} 
 

 
console.log(1, pickNew('\/\/ with new operator')); 
 
console.log(2, pickNew('\/\/ with the new operator')); 
 
console.log(3, pickNew('\/\/ withthe new operator'));

基本上是這樣的正則表達式開頭預計兩條斜線,零或更多的空白和一個詞的發生。修飾符是:多行,全局,區分大小寫

+0

當我在這個網站https://regex101.com/上測試它時,它匹配「//」和「with」...我想在上次更新時匹配「新」 – user3629892

+0

結帳 – Hitmands

0

如果你想在反斜槓的句子中搜索新詞,你可以使用這樣的東西,它會工作。你應該跳過那些反斜槓。

^\s*\/\/.*[new] 

測試此reg表達式,它將工作。

相關問題