适用于Chrome和Chrome的正则表达式负面预测苹果浏览器

时间:2012-06-19 20:49:44

标签: javascript regex regex-lookarounds

我需要匹配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

1 个答案:

答案 0 :(得分:5)

这样做

^(?!.*chrome).*(safari)

BTW JavaScript不支持lookbehind,但我发现前瞻没有问题。

你在说什么

(?!chrome)(safari)

在“safari”之前是否正确(零宽度因此从s之前的光标开始)没有字符串“chrome”没有意义。