request.getHeader("user-agent")解析各种浏览器

来源:互联网 发布:阿里云网址 编辑:程序博客网 时间:2024/06/08 09:47
  1. public class BrowseTool {  
  2.     private final static String IE9="MSIE 9.0";  
  3.     private final static String IE8="MSIE 8.0";  
  4.     private final static String IE7="MSIE 7.0";  
  5.     private final static String IE6="MSIE 6.0";  
  6.     private final static String MAXTHON="Maxthon";  
  7.     private final static String QQ="QQBrowser";  
  8.     private final static String GREEN="GreenBrowser";  
  9.     private final static String SE360="360SE";  
  10.     private final static String FIREFOX="Firefox";  
  11.     private final static String OPERA="Opera";  
  12.     private final static String CHROME="Chrome";  
  13.     private final static String SAFARI="Safari";  
  14.     private final static String OTHER="其它";  
  15.       
  16.       
  17.     public String checkBrowse(String userAgent){  
  18.         if(regex(OPERA, userAgent))return OPERA;  
  19.         if(regex(CHROME, userAgent))return CHROME;  
  20.         if(regex(FIREFOX, userAgent))return FIREFOX;  
  21.         if(regex(SAFARI, userAgent))return SAFARI;  
  22.         if(regex(SE360, userAgent))return SE360;  
  23.         if(regex(GREEN,userAgent))return GREEN;  
  24.         if(regex(QQ,userAgent))return QQ;  
  25.         if(regex(MAXTHON, userAgent))return MAXTHON;  
  26.         if(regex(IE9,userAgent))return IE9;  
  27.         if(regex(IE8,userAgent))return IE8;  
  28.         if(regex(IE7,userAgent))return IE7;  
  29.         if(regex(IE6,userAgent))return IE6;  
  30.         return OTHER;  
  31.     }  
  32.     public boolean regex(String regex,String str){  
  33.         Pattern p =Pattern.compile(regex,Pattern.MULTILINE);  
  34.         Matcher m=p.matcher(str);  
  35.         return m.find();  
  36.     }  
  37.       
  38.     public static void main(String[] args) {  
  39.         String ie9    ="Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)";  
  40.         String ie8    ="Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.2; Trident/4.0; .NET CLR 1.1.4322)";  
  41.         String ie7    ="Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2; .NET CLR 1.1.4322)";  
  42.         String ie6    ="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322)";  
  43.         String aoyou  ="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; Maxthon 2.0)";  
  44.         String qq     ="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322) QQBrowser/6.8.10793.201";  
  45.         String green  ="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; GreenBrowser)";  
  46.         String se360  ="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; 360SE)";  
  47.           
  48.         String chrome ="Mozilla/5.0 (Windows; U; Windows NT 5.2; en-US) AppleWebKit/534.11 (KHTML, like Gecko) Chrome/9.0.570.0 Safari/534.11";                 
  49.         String safari ="Mozilla/5.0 (Windows; U; Windows NT 6.1; zh-CN) AppleWebKit/533.17.8 (KHTML, like Gecko) Version/5.0.1 Safari/533.17.8";  
  50.         String fireFox="Mozilla/5.0 (Windows NT 5.2; rv:7.0.1) Gecko/20100101 Firefox/7.0.1";  
  51.         String opera  ="Opera/9.80  (Windows NT 5.2; U; zh-cn) Presto/2.9.168 Version/11.51";  
  52.         String other  ="(Windows NT 5.2; U; zh-cn) Presto/2.9.168 Version/11.51";  
  53.         BrowseTool b=new BrowseTool();  
  54.         System.out.println(b.checkBrowse(ie9));  
  55.         System.out.println(b.checkBrowse(ie8));  
  56.         System.out.println(b.checkBrowse(ie7));  
  57.         System.out.println(b.checkBrowse(ie6));  
  58.         System.out.println(b.checkBrowse(aoyou));  
  59.         System.out.println(b.checkBrowse(qq));  
  60.         System.out.println(b.checkBrowse(green));  
  61.         System.out.println(b.checkBrowse(se360));  
  62.         System.out.println(b.checkBrowse(chrome));  
  63.         System.out.println(b.checkBrowse(safari));  
  64.         System.out.println(b.checkBrowse(fireFox));  
  65.         System.out.println(b.checkBrowse(opera));  
  66.         System.out.println(b.checkBrowse(other));  
  67.     }  
  68.       

0 0
原创粉丝点击