Java正则表达式校验邮箱、手机号和身份证等详解编程语言

用于校验用户名、密码、手机号、邮箱和身份证等信息

import java.util.regex.Pattern; 
  
/** 
 * 校验器:利用正则表达式校验邮箱、手机号等 
 *  
 * @author liujiduo 
 *  
 */ 
public class Validator { 
    /** 
     * 正则表达式:验证用户名 
     */ 
    public static final String REGEX_USERNAME = "^[a-zA-Z]//w{5,17}$"; 
  
    /** 
     * 正则表达式:验证密码 
     */ 
    public static final String REGEX_PASSWORD = "^[a-zA-Z0-9]{6,16}$"; 
  
    /** 
     * 正则表达式:验证手机号 
     */ 
    public static final String REGEX_MOBILE = "^((13[0-9])|(15[^4,//D])|(18[0,5-9]))//d{8}$"; 
  
    /** 
     * 正则表达式:验证邮箱 
     */ 
    public static final String REGEX_EMAIL = "^([a-z0-9A-Z]+[-|//.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?//.)+[a-zA-Z]{2,}$"; 
  
    /** 
     * 正则表达式:验证汉字 
     */ 
    public static final String REGEX_CHINESE = "^[/u4e00-/u9fa5],{0,}$"; 
  
    /** 
     * 正则表达式:验证身份证 
     */ 
    public static final String REGEX_ID_CARD = "(^//d{18}$)|(^//d{15}$)"; 
  
    /** 
     * 正则表达式:验证URL 
     */ 
    public static final String REGEX_URL = "http(s)?://([//w-]+//.)+[//w-]+(/[//w- ./?%&=]*)?"; 
  
    /** 
     * 正则表达式:验证IP地址 
     */ 
    public static final String REGEX_IP_ADDR = "(25[0-5]|2[0-4]//d|[0-1]//d{2}|[1-9]?//d)"; 
  
    /** 
     * 校验用户名 
     *  
     * @param username 
     * @return 校验通过返回true,否则返回false 
     */ 
    public static boolean isUsername(String username) { 
        return Pattern.matches(REGEX_USERNAME, username); 
    } 
  
    /** 
     * 校验密码 
     *  
     * @param password 
     * @return 校验通过返回true,否则返回false 
     */ 
    public static boolean isPassword(String password) { 
        return Pattern.matches(REGEX_PASSWORD, password); 
    } 
  
    /** 
     * 校验手机号 
     *  
     * @param mobile 
     * @return 校验通过返回true,否则返回false 
     */ 
    public static boolean isMobile(String mobile) { 
        return Pattern.matches(REGEX_MOBILE, mobile); 
    } 
  
    /** 
     * 校验邮箱 
     *  
     * @param email 
     * @return 校验通过返回true,否则返回false 
     */ 
    public static boolean isEmail(String email) { 
        return Pattern.matches(REGEX_EMAIL, email); 
    } 
  
    /** 
     * 校验汉字 
     *  
     * @param chinese 
     * @return 校验通过返回true,否则返回false 
     */ 
    public static boolean isChinese(String chinese) { 
        return Pattern.matches(REGEX_CHINESE, chinese); 
    } 
  
    /** 
     * 校验身份证 
     *  
     * @param idCard 
     * @return 校验通过返回true,否则返回false 
     */ 
    public static boolean isIDCard(String idCard) { 
        return Pattern.matches(REGEX_ID_CARD, idCard); 
    } 
  
    /** 
     * 校验URL 
     *  
     * @param url 
     * @return 校验通过返回true,否则返回false 
     */ 
    public static boolean isUrl(String url) { 
        return Pattern.matches(REGEX_URL, url); 
    } 
  
    /** 
     * 校验IP地址 
     *  
     * @param ipAddr 
     * @return 
     */ 
    public static boolean isIPAddr(String ipAddr) { 
        return Pattern.matches(REGEX_IP_ADDR, ipAddr); 
    } 
  
    public static void main(String[] args) { 
        String username = "fdsdfsdj"; 
        System.out.println(Validator.isUsername(username)); 
        System.out.println(Validator.isChinese(username)); 
    } 
}

原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/10545.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论