java 通过request.getHeader("user-agent")解析浏览器

Java代码 复制代码 收藏代码
  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. public String checkBrowse(String userAgent){
  16. if(regex(OPERA, userAgent))return OPERA;
  17. if(regex(CHROME, userAgent))return CHROME;
  18. if(regex(FIREFOX, userAgent))return FIREFOX;
  19. if(regex(SAFARI, userAgent))return SAFARI;
  20. if(regex(SE360, userAgent))return SE360;
  21. if(regex(GREEN,userAgent))return GREEN;
  22. if(regex(QQ,userAgent))return QQ;
  23. if(regex(MAXTHON, userAgent))return MAXTHON;
  24. if(regex(IE9,userAgent))return IE9;
  25. if(regex(IE8,userAgent))return IE8;
  26. if(regex(IE7,userAgent))return IE7;
  27. if(regex(IE6,userAgent))return IE6;
  28. return OTHER;
  29. }
  30. public boolean regex(String regex,String str){
  31. Pattern p =Pattern.compile(regex,Pattern.MULTILINE);
  32. Matcher m=p.matcher(str);
  33. return m.find();
  34. }
  35. public static void main(String[] args) {
  36. String ie9 ="Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)";
  37. String ie8 ="Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.2; Trident/4.0; .NET CLR 1.1.4322)";
  38. String ie7 ="Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2; .NET CLR 1.1.4322)";
  39. String ie6 ="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322)";
  40. String aoyou ="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; Maxthon 2.0)";
  41. String qq ="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322) QQBrowser/6.8.10793.201";
  42. String green ="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; GreenBrowser)";
  43. String se360 ="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; 360SE)";
  44. 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";
  45. 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";
  46. String fireFox="Mozilla/5.0 (Windows NT 5.2; rv:7.0.1) Gecko/20100101 Firefox/7.0.1";
  47. String opera ="Opera/9.80 (Windows NT 5.2; U; zh-cn) Presto/2.9.168 Version/11.51";
  48. String other ="(Windows NT 5.2; U; zh-cn) Presto/2.9.168 Version/11.51";
  49. BrowseTool b=new BrowseTool();
  50. System.out.println(b.checkBrowse(ie9));
  51. System.out.println(b.checkBrowse(ie8));
  52. System.out.println(b.checkBrowse(ie7));
  53. System.out.println(b.checkBrowse(ie6));
  54. System.out.println(b.checkBrowse(aoyou));
  55. System.out.println(b.checkBrowse(qq));
  56. System.out.println(b.checkBrowse(green));
  57. System.out.println(b.checkBrowse(se360));
  58. System.out.println(b.checkBrowse(chrome));
  59. System.out.println(b.checkBrowse(safari));
  60. System.out.println(b.checkBrowse(fireFox));
  61. System.out.println(b.checkBrowse(opera));
  62. System.out.println(b.checkBrowse(other));
  63. }
  64. }
public class BrowseTool {  
    private final static String IE9="MSIE 9.0";  
    private final static String IE8="MSIE 8.0";  
    private final static String IE7="MSIE 7.0";  
    private final static String IE6="MSIE 6.0";  
    private final static String MAXTHON="Maxthon";  
    private final static String QQ="QQBrowser";  
    private final static String GREEN="GreenBrowser";  
    private final static String SE360="360SE";  
    private final static String FIREFOX="Firefox";  
    private final static String OPERA="Opera";  
    private final static String CHROME="Chrome";  
    private final static String SAFARI="Safari";  
    private final static String OTHER="其它";  
      
      
    public String checkBrowse(String userAgent){  
        if(regex(OPERA, userAgent))return OPERA;  
        if(regex(CHROME, userAgent))return CHROME;  
        if(regex(FIREFOX, userAgent))return FIREFOX;  
        if(regex(SAFARI, userAgent))return SAFARI;  
        if(regex(SE360, userAgent))return SE360;  
        if(regex(GREEN,userAgent))return GREEN;  
        if(regex(QQ,userAgent))return QQ;  
        if(regex(MAXTHON, userAgent))return MAXTHON;  
        if(regex(IE9,userAgent))return IE9;  
        if(regex(IE8,userAgent))return IE8;  
        if(regex(IE7,userAgent))return IE7;  
        if(regex(IE6,userAgent))return IE6;  
        return OTHER;  
    }  
    public boolean regex(String regex,String str){  
        Pattern p =Pattern.compile(regex,Pattern.MULTILINE);  
        Matcher m=p.matcher(str);  
        return m.find();  
    }  
      
    public static void main(String[] args) {  
        String ie9    ="Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)";  
        String ie8    ="Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.2; Trident/4.0; .NET CLR 1.1.4322)";  
        String ie7    ="Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2; .NET CLR 1.1.4322)";  
        String ie6    ="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322)";  
        String aoyou  ="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; Maxthon 2.0)";  
        String qq     ="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322) QQBrowser/6.8.10793.201";  
        String green  ="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; GreenBrowser)";  
        String se360  ="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; 360SE)";  
          
        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";                 
        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";  
        String fireFox="Mozilla/5.0 (Windows NT 5.2; rv:7.0.1) Gecko/20100101 Firefox/7.0.1";  
        String opera  ="Opera/9.80  (Windows NT 5.2; U; zh-cn) Presto/2.9.168 Version/11.51";  
        String other  ="(Windows NT 5.2; U; zh-cn) Presto/2.9.168 Version/11.51";  
        BrowseTool b=new BrowseTool();  
        System.out.println(b.checkBrowse(ie9));  
        System.out.println(b.checkBrowse(ie8));  
        System.out.println(b.checkBrowse(ie7));  
        System.out.println(b.checkBrowse(ie6));  
        System.out.println(b.checkBrowse(aoyou));  
        System.out.println(b.checkBrowse(qq));  
        System.out.println(b.checkBrowse(green));  
        System.out.println(b.checkBrowse(se360));  
        System.out.println(b.checkBrowse(chrome));  
        System.out.println(b.checkBrowse(safari));  
        System.out.println(b.checkBrowse(fireFox));  
        System.out.println(b.checkBrowse(opera));  
        System.out.println(b.checkBrowse(other));  
    }  
      
} 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值