正則表達式大全

package com.lyqc.utils; 
 
import org.apache.commons.lang.StringUtils; 
 
public class ValidUtils { 
 
/**手機號*/ 
 
private static final String mobile = "^(13|15|18|17|16)[0-9]{9}$"; 
 
private static final String codeAndMobile = "^\+[0-9]{2}\-(13|15|18|17|16)[0-9]{9}$"; 
 
/**整數*/ 
 
private static final String intege="^-?[1-9]\d*$"; 
 
/** 正整數*/ 
 
private static final String intege1="^[1-9]\d*$"; 
 
/** 負整數*/ 
 
private static final String intege2="^-[1-9]\d*$"; 
 
/** 數字*/ 
 
private static final String num="^([+-]?)\d*\.?\d+$"; 
 
/** 正數(正整數 + 0)*/ 
 
private static final String num1="^[1-9]\d*|0$"; 
 
/** 負數(負整數 + 0)*/ 
 
private static final String num2="^-[1-9]\d*|0$"; 
 
/** 浮點數*/ 
 
private static final String decmal="^([+-]?)\d*\.\d+$"; 
 
/** 正浮點數*/ 
 
private static final String decmal1="^[1-9]\d*.\d*|0.\d*[1-9]\d*$"; 
 
/** 負浮點數*/ 
 
private static final String decmal2="^-([1-9]\d*.\d*|0.\d*[1-9]\d*)$"; 
 
/** 浮點數*/ 
 
private static final String decmal3="^-?([1-9]\d*.\d*|0.\d*[1-9]\d*|0?.0+|0)$"; 
 
/** 非負浮點數(正浮點數 + 0)*/ 
 
private static final String decmal4="^[1-9]\d*.\d*|0.\d*[1-9]\d*|0?.0+|0$"; 
 
/**非正浮點數(負浮點數 + 0) */ 
 
private static final String decmal5="^(-([1-9]\d*.\d*|0.\d*[1-9]\d*))|0?.0+|0$"; 
 
/** 郵件*/ 
 
private static final String email="^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$"; 
 
/** 顏色*/ 
 
private static final String color="^[a-fA-F0-9]{6}$"; 
 
/** url*/ 
 
private static final String url="^http[s]?=\/\/([\w-]+\.)+[\w-]+([\w-./?%&=]*)?$"; 
 
/** 僅中文*/ 
 
private static final String chinese="^[\一-\龥\豈-\鶴]+$"; 
 
/** 僅ACSII字符*/ 
 
private static final String ascii="^[\-\ÿ]+$"; 
 
/**郵編 */ 
 
private static final String zipcode="^\d{6}$"; 
 
/** ip地址*/ 
 
private static final String ip4="^(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)$"; 
 
/** 非空*/ 
 
private static final String notempty="^\S+$"; 
 
/**圖片 */ 
 
private static final String picture="(.*)\.(jpg|bmp|gif|ico|pcx|jpeg|tif|png|raw|tga)$"; 
 
/** 壓縮文件*/ 
 
private static final String rar="(.*)\.(rar|zip|7zip|tgz)$"; 
 
/** 日期*/ 
 
private static final String date="^\d{4}(\-|\/|\.)\d{1,2}\1\d{1,2}$"; 
 
/** QQ號碼*/ 
 
private static final String qq="^[1-9]*[1-9][0-9]*$"; 
 
/** 電話號碼的函數(包括驗證國內區號;國際區號;分機號)*/ 
 
private static final String tel="^(([0\+]\d{2,3}-)?(0\d{2,3})-)?(\d{7,8})(-(\d{1,}))?$"; 
 
/** 用來用戶註冊。匹配由數字、26個英文字母或者下劃線組成的字符串*/ 
 
private static final String username="^\w+$"; 
 
/** 字母*/ 
 
private static final String letter="^[A-Za-z]+$"; 
 
private static final String letterAndSpace="^[A-Za-z ]+$"; 
 
/** 大寫字母*/ 
 
private static final String letter_u="^[A-Z]+$"; 
 
/** 小寫字母*/ 
 
private static final String letter_l="^[a-z]+$"; 
 
/** 身份證*/ 
 
private static final String idcard="^[1-9]([0-9]{14}|[0-9]{17})$"; 
 
/**判斷字符串是否爲浮點數*/ 
 
private static final String isFloat="^[-]?\d+(\.\d+)?$"; 
 
/**判斷字符串是否爲正浮點數*/ 
 
private static final String isUFloat="^\d+(\.\d+)?$"; 
 
/**判斷是不是整數*/ 
 
private static final String isInteger="^[-]?\d+$"; 
 
/**判斷是不是正整數*/ 
 
private static final String isUInteger="^\d+$"; 
 
/**判斷車輛Vin碼*/ 
 
private static final String isCarVin="^[1234567890WERTYUPASDFGHJKLZXCVBNM]{13}[0-9]{4}$"; 
 
/** 手機號 */ 
 
public static boolean isMobile(String input){ 
 
return matches(mobile, input); 
 
} 
 
public static boolean isCodeAndMobile(String input){ 
 
return matches(codeAndMobile, input); 
 
} 
 
/** 整數 */ 
 
public static boolean isIntege(String input){ 
 
return matches(intege, input); 
 
} 
 
/** 正整數 */ 
 
public static boolean isintege1(String input){ 
 
return matches(intege1, input); 
 
} 
 
/** 負整數*/ 
 
public static boolean isIntege2(String input){ 
 
return matches(intege2, input); 
 
} 
 
/** 數字 */ 
 
public static boolean isNum(String input){ 
 
return matches(num, input); 
 
} 
 
/** 正數(正整數 + 0) */ 
 
public static boolean isNum1(String input){ 
 
return matches(num1, input); 
 
} 
 
/** 負數(負整數 + 0)*/ 
 
public static boolean isNum2(String input){ 
 
return matches(num2, input); 
 
} 
 
/** 浮點數*/ 
 
public static boolean isDecmal(String input){ 
 
return matches(decmal, input); 
 
} 
 
/** 正浮點數*/ 
 
public static boolean isDecmal1(String input){ 
 
return matches(decmal1, input); 
 
} 
 
/** 負浮點數*/ 
 
public static boolean isDecmal2(String input){ 
 
return matches(decmal2, input); 
 
} 
 
/**浮點數 */ 
 
public static boolean isDecmal3(String input){ 
 
return matches(decmal3, input); 
 
} 
 
/** 非負浮點數(正浮點數 + 0)*/ 
 
public static boolean isDecmal4(String input){ 
 
return matches(decmal4, input); 
 
} 
 
/** 非正浮點數(負浮點數 + 0)*/ 
 
public static boolean isDecmal5(String input){ 
 
return matches(decmal5, input); 
 
} 
 
/** 郵件*/ 
 
public static boolean isEmail(String input){ 
 
return matches(email, input); 
 
} 
 
/** 顏色*/ 
 
public static boolean isColor(String input){ 
 
return matches(color, input); 
 
} 
 
/** url*/ 
 
public static boolean isUrl(String input){ 
 
return matches(url, input); 
 
} 
 
/** 中文*/ 
 
public static boolean isChinese(String input){ 
 
return matches(chinese, input); 
 
} 
 
/** ascii碼*/ 
 
public static boolean isAscii(String input){ 
 
return matches(ascii, input); 
 
} 
 
/** 郵編*/ 
 
public static boolean isZipcode(String input){ 
 
return matches(zipcode, input); 
 
} 
 
/** IP地址*/ 
 
public static boolean isIP4(String input){ 
 
return matches(ip4, input); 
 
} 
 
/** 非空*/ 
 
public static boolean isNotEmpty(String input){ 
 
return matches(notempty, input); 
 
} 
 
/** 圖片*/ 
 
public static boolean isPicture(String input){ 
 
return matches(picture, input); 
 
} 
 
/** 壓縮文件*/ 
 
public static boolean isRar(String input){ 
 
return matches(rar, input); 
 
} 
 
/** 日期*/ 
 
public static boolean isDate(String input){ 
 
return matches(date, input); 
 
} 
 
/** qq*/ 
 
public static boolean isQQ(String input){ 
 
return matches(qq, input); 
 
} 
 
/** 電話號碼的函數(包括驗證國內區號;國際區號;分機號)*/ 
 
public static boolean isTel(String input){ 
 
return matches(tel, input); 
 
} 
 
/** 用來用戶註冊。匹配由數字、26個英文字母或者下劃線組成的字符串*/ 
 
public static boolean isUserName(String input){ 
 
return matches(username, input); 
 
} 
 
/**字母*/ 
 
public static boolean isLetter(String input){ 
 
return matches(letter, input); 
 
} 
 
public static boolean isLetterAndSpace(String input){ 
 
return matches(letterAndSpace, input); 
 
} 
 
/** 小寫字母*/ 
 
public static boolean isLowLetter(String input){ 
 
return matches(letter_l, input); 
 
} 
 
/** 大寫字母*/ 
 
public static boolean isUpperLetter(String input){ 
 
return matches(letter_u, input); 
 
} 
 
/** 身份證*/ 
 
public static boolean isIDCard(String input){ 
 
return matches(idcard, input); 
 
} 
 
public static boolean isFloat(String input){ 
 
return matches(isFloat, input); 
 
} 
 
public static boolean isUFloat(String input){ 
 
return matches(isUFloat, input); 
 
} 
 
public static boolean isInteger(String input){ 
 
return matches(isInteger, input); 
 
} 
 
public static boolean isUInteger(String input){ 
 
return matches(isUInteger, input); 
 
} 
 
public static boolean isCarVin(String carVin){ 
 
return matches(isCarVin, carVin); 
 
} 
 
public static boolean matches(String regex,String input){ 
 
if(StringUtils.isBlank(input)) return false; 
 
if(input.matches(regex))return true; 
 
return false; 
 
} 
 
public static void main(String[] args) { 
 
/*System.out.println(isInteger("1")); 
 
System.out.println(isInteger("0")); 
 
System.out.println(isInteger("-1")); 
 
System.out.println(isInteger("1.0")); 
 
System.out.println("--------------------"); 
 
System.out.println(isUInteger("-1")); 
 
System.out.println(isUInteger("0")); 
 
System.out.println(isUInteger("10")); 
 
System.out.println(isUInteger("1.3"));*/ 
 
System.out.println(isLetterAndSpace("tai wan")); 
 
} 
 
} 
相關文章
相關標籤/搜索