首页 > 技术文章 > java 格式判断

rubekid 2015-10-11 11:51 原文

public class FormatChecker {
    
    /**
     * 判断是否含有汉字
     * @param string
     */
    public static boolean containChinese(String string){
        Pattern pattern = Pattern.compile("[\\u4e00-\\u9fa5]");
        return pattern.matcher(string).find();
    }
    
    /**
     * 判断是否含有空格
     */
    public static boolean containBlank(String string){
        Pattern pattern = Pattern.compile("[\\s]");
        return pattern.matcher(string).find(); 
    }
    
    /**
     * 判断是否为电话号码
     */
    public static boolean isPhone(String string){
        Pattern pattern = Pattern.compile("1[3,4,5,7,8]\\d{9}");
        return pattern.matcher(string).matches();
    }
    
    /**
     * 判断是否为手机号码
     */
    public static boolean isMobile(String string){
        Pattern pattern = Pattern.compile("1[3,4,5,7,8]\\d{9}");
        return pattern.matcher(string).matches();
    }
    
    /**
     * 判断是否为固定电话
     */
    public static boolean isTelephone(String string){
        Pattern pattern = Pattern.compile("(^\\+86\\.\\d{3,5}\\d{6,8}$)|(^((0\\d{2,3})-?)(\\d{7,8})(-(\\d{3,}))?$)");
        return pattern.matcher(string).matches();
    }
    
    /**
     * 判断是否为邮箱
     */
    public static boolean isEmail(String string){
        Pattern pattern = Pattern.compile("[&~#$*%\\u4e00-\\u9fa5_0-9a-z\\-\\.\\/\\\\]+@([\\u4e00-\\u9fa5-a-z0-9]+\\.){1,5}[\\u4e00-\\u9fa5a-z]+", Pattern.CASE_INSENSITIVE);
        return pattern.matcher(string).matches();
    }
    
    /**
     * 判断是否为链接地址
     */
    public static boolean isUrl(String string){
        Pattern pattern = Pattern.compile("((http|https):\\/\\/([\\w\\-]+\\.)+[\\w\\-]+(\\/[\\w\\u4e00-\\u9fa5\\-\\.\\/?\\@\\%\\!\\&=\\+\\~\\:\\#\\;\\,]*)?)", Pattern.CASE_INSENSITIVE );
        return pattern.matcher(string).matches();
    }
    
    /**
     * 判断是否为域名
     */
    public static boolean isDomain(String string){
        Pattern pattern = Pattern.compile("^([\\x{4e00}-\\x{9fa5}-a-z0-9]+\\.){1,5}[\\x{4e00}-\\x{9fa5}a-z]+$", Pattern.CASE_INSENSITIVE );
        return pattern.matcher(string).matches();
    }
    /**
     * 判断是否为数字
     */
    public static boolean isNumber(String string){
        Pattern pattern = Pattern.compile("^[1-9]\\d*$", Pattern.CASE_INSENSITIVE );
        return "0".equals(string) || pattern.matcher(string).matches();
    }
}

 

推荐阅读