2015-06-04 85 views
-1

我想匹配尚未縮小的JavaScript庫。我已經獲得了數據和當前的正則表達式http://www.regexr.com/3b569,但是您可以看到我與最後一個不匹配的庫(angularytics.min.js)匹配。如何使用正則表達式來匹配不包含特定子字符串的字符串?

我只是不太確定如何否定'.min.js'在我的比賽中的可選可能性。

+0

乘坐看看[RexEgg:Lookarounds](http://www.rexegg.com/regex-lookarounds.html)並閱讀負面預測。 – hwnd

+0

感謝@hwnd,它看起來像我會理想地喜歡像負面lookbehind。不幸的是,它不支持JavaScript。我會繼續閱讀有關負面看法。 – billy

+0

這正是我正在尋找的。謝謝......我需要處理那裏發生的事情,所以我可以自己來解決這些問題。我感謝你指點我一個很好的資源。如果你把它作爲一個整體,我會選擇這個答案作爲答案。 – billy

回答

1

你可以在這裏實現負前瞻:

bower_components(?!.*min\.js).*\.js 
1

一個可以執行的方式:

/(?!.*\.min\.js$)bower_components.*\.js/gm 

DEMO

+0

謝謝,那絕對是。我想知道是否有某種方法可以在正則表達式中加入.min否定詞,它更接近於可能在原始字符串中找到它的地方? – billy

+0

@hwnd提供了'bower_components(?!。* min)。* \。js'這正是我所希望的那種東西。謝謝你的回答! – billy

+0

高興地幫助:) –

1

你也許可以縮小範圍進一步,所以並不是任何min失敗
正則表達式。
編輯 - 添加惰性限定符找到第一.js如果有加入(?=[^\S\r\n]*(?:\r?\n|$))

bower_components(?:(?!min\.js).)*?\.js

bower_components 
(?: 
     (?! min\.js) 
     . 
)*? 
\.js 
超過1
你也可以出線 .js這是在/接近尾聲
+0

@hwnd提供了'bower_components(?!。* min)。* \。js',這正是我曾經希望。謝謝你的回答! – billy

相關問題