package net.hlj.common.util; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * @項目名:houseInfo * @包名:net.hlj.common.util * @文件名:DataValidator.java * @日期:Feb 23, 2012 3:32:01 PM * @備註:數據驗證類 * @做者:apple */ public class DataValidator { /** * 是不是整數 * @param value */ public static boolean isIntege(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^-?[1-9]\\d*$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是正整數 * @param value */ public static boolean isIntege1(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^[1-9]\\d*$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是負整數 * @param value */ public static boolean isIntege2(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^-[1-9]\\d*$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是數字 * @param value */ public static boolean isNum(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^([+-]?)\\d*\\.?\\d+$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是正數(正整數 + 0) * @param value */ public static boolean isNum1(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^[1-9]\\d*|0$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是負數(負整數 + 0) * @param value */ public static boolean isNum2(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^-[1-9]\\d*|0$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是浮點數 * @param value */ public static boolean isDecmal(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^([+-]?)\\d*\\.\\d+$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是正浮點數 * @param value */ public static boolean isDecmal1(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^[1-9]\\d*.\\d*|0.\\d*[1-9]\\d*$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是負浮點數 * @param value */ public static boolean isDecmal2(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^-([1-9]\\d*.\\d*|0.\\d*[1-9]\\d*)$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是浮點數 * @param value */ public static boolean isDecmal3(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^-?([1-9]\\d*.\\d*|0.\\d*[1-9]\\d*|0?.0+|0)$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是非負浮點數(正浮點數 + 0) * @param value */ public static boolean isDecmal4(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^[1-9]\\d*.\\d*|0.\\d*[1-9]\\d*|0?.0+|0$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是非正浮點數(負浮點數 + 0) * @param value */ public static boolean isDecmal5(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^(-([1-9]\\d*.\\d*|0.\\d*[1-9]\\d*))|0?.0+|0$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是郵件 * @param value */ public static boolean isEmail(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^\\w+((-\\w+)|(\\.\\w+))*\\@[A-Za-z0-9]+((\\.|-)[A-Za-z0-9]+)*\\.[A-Za-z0-9]+$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是顏色 * @param value */ public static boolean isColor(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^[a-fA-F0-9]{6}$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是url * @param value */ public static boolean isUrl(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^http[s]?:\\/\\/([\\w-]+\\.)+[\\w-]+([\\w-./?%&=]*)?$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是中文 * @param value */ public static boolean isChinese(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^[\\u4E00-\\u9FA5\\uF900-\\uFA2D]+$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是ACSII字符 * @param value */ public static boolean isAscii(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^[\\x00-\\xFF]+$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是郵編 * @param value */ public static boolean isZipcode(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^\\d{6}$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是手機 * @param value */ public static boolean isMobile(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^(13|15)[0-9]{9}$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是ip地址 * @param value */ public static boolean isIp(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^(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)$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是非空 * @param value */ public static boolean isNotempty(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^\\S+$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是圖片 * @param value */ public static boolean isPicture(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("(.*)\\.(jpg|bmp|gif|ico|pcx|jpeg|tif|png|raw|tga)$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是壓縮文件 * @param value */ public static boolean isRar(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("(.*)\\.(rar|zip|7zip|tgz)$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是日期 * @param value */ public static boolean isDate(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^((\\d{2}(([02468][048])|([13579][26]))[\\-\\/\\s]?((((0?[13578])|(1[02]))[\\-\\/\\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\\-\\/\\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\\-\\/\\s]?((0?[1-9])|([1-2][0-9])))))|(\\d{2}(([02468][1235679])|([13579][01345789]))[\\-\\/\\s]?((((0?[13578])|(1[02]))[\\-\\/\\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\\-\\/\\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\\-\\/\\s]?((0?[1-9])|(1[0-9])|(2[0-8]))))))(\\s(((0?[0-9])|([1-2][0-3]))\\:([0-5]?[0-9])((\\s)|(\\:([0-5]?[0-9])))))?$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是QQ號碼 * @param value */ public static boolean isQq(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^[1-9]*[1-9][0-9]*$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是電話號碼的函數(包括驗證國內區號,國際區號,分機號) * @param value */ public static boolean isTel(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^(([0\\+]\\d{2,3}-)?(0\\d{2,3})-)?(\\d{7,8})(-(\\d{3,}))?$"); m=p.matcher(value); b=m.matches(); return b; } /** * 用來用戶註冊。匹配由數字、26個英文字母或者下劃線組成的字符串 * @param value */ public static boolean isUsername(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^\\w+$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是字母 * @param value */ public static boolean isLetter(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^[A-Za-z]+$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是大寫字母 * @param value */ public static boolean isLetter_u(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^[A-Z]+$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是大寫字母 * @param value */ public static boolean isLetter_l(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^[a-z]+$"); m=p.matcher(value); b=m.matches(); return b; } /** * 是不是價格 * @param value */ public static boolean isPrice(String value){ Pattern p=null;//正則表達式 Matcher m=null;//操做符表達式 boolean b=false; p=p.compile("^([1-9]{1}[0-9]{0,}(\\.[0-9]{0,2})?|0(\\.[0-9]{0,2})?|\\.[0-9]{1,2})$"); m=p.matcher(value); b=m.matches(); return b; } public static void main(String[] args) { boolean b=isPrice("25.67"); System.out.println(b); } }
轉自:http://dpn525.iteye.com/blog/1420216 java