我需要匹配Safari浏览器,而不是使用一个Regex的Chrome浏览器。我通常没有正则表达式的问题,但是负面的预测让我难过。
/(?!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
。
答案 0 :(得分:5)
这样做
^(?!.*chrome).*(safari)
BTW JavaScript不支持lookbehind,但我发现前瞻没有问题。
你在说什么
(?!chrome)(safari)
在“safari”之前是否正确(零宽度因此从s之前的光标开始)没有字符串“chrome”没有意义。