代码之家  ›  专栏  ›  技术社区  ›  Murali Nepalli

在IOS设备上否定chrome的正则表达式

  •  0
  • Murali Nepalli  · 技术社区  · 7 年前

     var regex = \\biP\\w+; CPU(?: iP\\w+)? OS (?:1[2-9][_\\d]+|11_(?:\\d\\d+|[3-9])(?:_\\d+)?) like Mac OS X\\b;
    
     if(navigator.userAgent.match(regex)) {
       // do something
     }
    

    现在,我想排除IOS上的chrome。所以,我试图在正则表达式下面否定“CriOS”(IOS上的chrome)一词,但它不起作用。请告诉我我这里缺少什么。提前谢谢

    "\\biP\\w+; CPU(?: iP\\w+)? OS (?:1[2-9][_\\d]+|11_(?:\\d\\d+|[3-9])(?:_\\d+)?) like Mac OS X\\b(?:(?!CriOS).)*$"
    

    Iphone Safari上的用户代理
    “Mozilla/5.0(iPhone;CPU iPhone OS 10_3类似于Mac OS X)AppleWebKit/603.1.23(KHTML,如Gecko)版本/10.0 Mobile/14E5239e Safari/602.1”


    “Mozilla/5.0(iPhone;CPU iPhone OS 10_3类似Mac OS X)AppleWebKit/602.1.50(KHTML,如Gecko)CriOS/56.0.2924.75 Mobile/14E5239e Safari/602.1”

    0 回复  |  直到 7 年前
        1
  •  0
  •   Ibrahim    7 年前

    尝试在代码开头添加否定 (?!.*CriOS) .

    (?!.*CriOS)\\biP\\w+; CPU(?: iP\\w+)? OS (?:1[2-9][_\\d]+|11_(?:\\d\\d+|[3-9])(?:_\\d+)?) like Mac OS X\\b