string必须匹配正则表达式中的两个值

时间:2015-03-11 17:00:05

标签: javascript regex

我的问题可能很荒谬,但我没有找到任何关于我想用JavaScript编码的全面信息。

我的第一个想法是通过检测网络浏览器的用户代理是否包含这些字符串来检测浏览器是否使用Blink引擎:" WebKit/537.36"和" Chrome"。这仅用于信息目的,而不是用于渲染。

那么,是否可以创建正则表达式,而不是强制字符串匹配两个表达式仅使用一个 matchtest声明?

而不是使用它:

navigator.userAgent.match("WebKit\/537\.36") && navigator.userAgent.match("Chrome"); // return true if Blink

感谢您将来的答案。

1 个答案:

答案 0 :(得分:0)

你可以在这里使用前瞻来强制同一个正则表达式中的两个条件:

return /(?=.*?WebKit\/537\.36)(?=.*?Chrome)/i.test( navigator.userAgent );