我需要匹配Safari瀏覽器,但不是使用一個正則表達式的Chrome瀏覽器。我通常對正則表達式沒有任何問題,但負面預測將我拖到這裏。Chrome和Safari的正則表達式Negative Lookahead
/(?!chrome)(safari)/i.test("Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5");
想不通這是爲什麼返回true
。
你正在匹配一個不等於'chrome'的子串'safari'。 (如果我理解正確的話,這不是很有意義。) – pimvdb
嗯,我可能會誤解使用。我試圖讓字符串匹配Safari,但只有當字符串不匹配鉻。 – dtbarne
[Negative lookahead:](http://www.regular-expressions.info/lookaround.html)'q(?!u)'匹配'*',後面是'*',後面跟着'u'。這在這裏沒有幫助。你實際上需要一個負面的後臺來處理這個工作(字符串包含'Safari',而不是'Chrome'),但是JS不支持負向倒序。 –