史上最全Java表单验证封装类
2024-08-04 11:40:01 216人阅读
package com.tongrong.utils;import java.util.Collection;import java.util.Map;import java.util.regex.Matcher;import java.util.regex.Pattern;import org.apache.commons.lang.StringUtils;/** * Java表单验证工具类 * * @author jiqinlin * */@SuppressWarnings("unchecked")public class RegexUtil { public static void main(String[] args) {// System.out.println("过滤中英文特殊字符: "+RegexUtil.stringFilter("中国~~!#$%%."));// System.out.println("是否包含中英文特殊字符: "+RegexUtil.isContainsSpecialChar("12"));// System.out.println("过滤html代码: "+RegexUtil.htmltoText("<JAVASCRIPT>12</JAVASCRIPT>DDDDD"));// System.out.println("判断中文字符: "+RegexUtil.isChineseChar("中国!")); System.out.println("匹配汉字: "+RegexUtil.isChinese("中国!"));// System.out.println("判断英文字符: "+RegexUtil.isEnglish("abc!"));// System.out.println("判断合法字符: "+RegexUtil.isRightfulString("abc_-11AAA"));// System.out.println("邮政编码验证: "+RegexUtil.isZipCode("162406"));// System.out.println("身份证号码验证: "+RegexUtil.isIdCardNo("35052419880210133e"));// System.out.println("手机号码验证: "+RegexUtil.isMobile("18918611111"));// System.out.println("电话号码验证: "+RegexUtil.isPhone("8889333"));// System.out.println("电话号码验证: "+RegexUtil.isNumeric("888.9333"));// System.out.println("匹配密码: "+RegexUtil.isPwd("d888d_ddddd"));// System.out.println("匹配密码: "+RegexUtil.isUrl("http://baidu.com")); System.out.println("验证字符: "+RegexUtil.stringCheck("中文aabc001_-"));// System.out.println(isEmail("416501600@qq.com")); //http://baidu.com www.baidu.com baidu.com// System.out.println(NumberUtils.toInt("-0000000002")); } public final static boolean isNull(Object[] objs){ if(objs==null||objs.length==0) return true; return false; } public final static boolean isNull(Integer integer){ if(integer==null||integer==0) return true; return false; } public final static boolean isNull(Collection collection){ if(collection==null||collection.size()==0) return true; return false; } public final static boolean isNull(Map map){ if(map==null||map.size()==0) return true; return false; } public final static boolean isNull(String str){ return str == null || "".equals(str.trim()) || "null".equals(str.toLowerCase()); } public final static boolean isNull(Long longs){ if(longs==null||longs==0) return true; return false; } public final static boolean isNotNull(Long longs){ return !isNull(longs); } public final static boolean isNotNull(String str){ return !isNull(str); } public final static boolean isNotNull(Collection collection){ return !isNull(collection); } public final static boolean isNotNull(Map map){ return !isNull(map); } public final static boolean isNotNull(Integer integer){ return !isNull(integer); } public final static boolean isNotNull(Object[] objs){ return !isNull(objs); } /** * 匹配URL地址 * * @param str * @return * @author jiqinlin */ public final static boolean isUrl(String str) { return match(str, "^http://([\\w-]+\\.)+[\\w-]+(/[\\w-./?%&=]*)?$"); } /** * 匹配密码,以字母开头,长度在6-12之间,只能包含字符、数字和下划线。 * * @param str * @return * @author jiqinlin */ public final static boolean isPwd(String str) { return match(str, "^[a-zA-Z]\\w{6,12}$"); } /** * 验证字符,只能包含中文、英文、数字、下划线等字符。 * * @param str * @return * @author jiqinlin */ public final static boolean stringCheck(String str) { return match(str, "^[a-zA-Z0-9\u4e00-\u9fa5-_]+$"); } /** * 匹配Email地址 * * @param str * @return * @author jiqinlin */ public final static boolean isEmail(String str) { return match(str, "^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$"); } /** * 匹配非负整数(正整数+0) * * @param