正则表达式 - 除Safari浏览器之外的所有移动浏览器的用户代理
问题描述:
任何人都可以使用regexExp帮助我将所有移动浏览器定位在Safari之外?看到这个网上,但它的转向了不是有益的正则表达式 - 除Safari浏览器之外的所有移动浏览器的用户代理
^(?:.*Windows Phone.*|.*WPDesktop.*|.*RIM.*|.*BlackBerry.*|.*Opera Mini.*|.*Opera Mobi.*|.*Silk\/.*|.*Kindle.*|.*Android.*|(?!.*?(?:iPhone)).*?Mobile.*|.*Symbian.*)$
答
你可以试试这个正则表达式:
(?:(?!Safari).)*
它包括一切,但Safari浏览器。 例子:
String s1 = "My browser is Safari.";
boolean res1 = s1.matches("(?:(?!Safari).)*"); // res1 = false
String s2 = "My browser is Opera.";
boolean res2 = s2.matches("(?:(?!Safari).)*"); // res2 = true
,看一下这个答案的详细信息:https://*.com/a/977290/1827254
是尝试始终评估移动浏览器的字符串? '因为在那种情况下,像“不Safari浏览器”这样的正则表达式会更容易,而不是列出所有内容(这看起来很复杂) – Eselfar
@Eselfar yes它始终是一个移动浏览器 – Kofi