java -正则表达式(是否含有特殊字符,英文或者数字)

/**
 * 判断是否含有特殊字符
 *
 * @param str
 * @return true为包含,false为不包含
 */
public static boolean isSpecialChar(String str) {
    String regEx = "[ _`~!@#$%^&*()+=|{}':;',\\[\\].<>/?~!@#¥%……&*()——+|{}【】‘;:”“’。,、?]|\n|\r|\t";
    Pattern p = Pattern.compile(regEx);
    Matcher m = p.matcher(str);
    return m.find();
}

/**
 * 英文或数字,且不能以数字打头
 *
 * @param str
 * @return true 为合法 fase 为不合法
 */
public static boolean isNumberAndEngilish(String str){
    String regEx = "^[A-Za-z]{1}[A-Za-z0-9]*$";
    Pattern p = Pattern.compile(regEx);
    Matcher m = p.matcher(str);
    return m.find();
}


/**
 * 邮箱格式判断
 *   true 表示合法,false表示不合法
 */
public static boolean checkEmail(String email) {
    boolean flag = false;
    try {
        String check = "^([a-z0-9A-Z]+[-|_|\\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-zA-Z]{2,}$";
        Pattern regex = Pattern.compile(check);
        Matcher matcher = regex.matcher(email);
        flag = matcher.matches();
    } catch (Exception e) {
        flag = false;
    }
    return flag;
}

你可能感兴趣的:(Java-初识-精通)