首页 > 匹配基本上所有浏览器的UserAgent以及主要搜索引擎蜘蛛的正则表达式是什么?

匹配基本上所有浏览器的UserAgent以及主要搜索引擎蜘蛛的正则表达式是什么?

用PHP实现UA白名单,需要能够匹配基本上所有的浏览器和主要的搜索引擎蜘蛛UA的正则。
可能这个问题比较复杂,我看看这里有没有人能解决。


var userAgent = navigator.userAgent.toLowerCase();
// Figure out what browser is being used
jQuery.browser = {
    version: (userAgent.match( /.+(?:rv|it|ra|ie)[/: ]([d.]+)/ ) || [])[1],
    safari: /webkit/.test( userAgent ),
    opera: /opera/.test( userAgent ),
    msie: /msie/.test( userAgent ) && !/opera/.test( userAgent ),
    mozilla: /mozilla/.test(userAgent)&&!/(compatible|webkit)/.test(userAgent)
};

供你参考一下,http://www.bkjia.com/jQuery/449138.html
提高另外两个线索思路,
1.最早jQuery的实现中,关于UA的检测好像就是使用正则表达式检测的方式的,后来的兼容性代码用的是“测试”的方式;
2.《JavaScript高级程序设计》,印象中是有这样的代码的, 第三版的示例代码在 233页


补充一下:
这个网站可以查到绝大多数浏览器和搜索引擎蜘蛛的UA:http://www.useragentstring.com/pages/useragentstring.php
IE的UA说明:https://msdn.microsoft.com/en-us/library/ms537503(v=vs.85).aspx
FireFox的UA说明:https://developer.mozilla.org/en-US/docs/Browser_detection_using_the_user_agent
Chrome的UA说明:https://developer.chrome.com/multidevice/user-agent

【热门文章】
【热门文章】