fuxiaohui
2016-08-17 21:37:51
java常用字符串校验工具方法
package com.ctrip.ops.odb.syncer.view.utils; import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; import java.util.Map; import java.util.Set; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * @info : 描述 检查工具类 * @author : lhli * @date : 2013-6-26 上午10:38:03 */ public class CheckUtil { /** * 判断字符串长度(字符串全为空格的为false) * @param str * @param min * @param max * @return */ public static Boolean checkStrLength(String str, Integer min, Integer max) { return (!isEmpty(str) && str.length() >= min && str.length() <= max); } /** * 判断字符串是不是数字 * @param str * @return */ public static Boolean checkNumber(String str) { return !isEmpty(str) && str.matches("^\\d+$"); } /** * 判断数组是否全部为空 * @param o * @return */ public static Boolean isAllEmpty(Object[] o) { if (o == null) return true; for (Object tmp : o) { if (!isEmpty(tmp)) { return false; } } return true; } /** * 判断字符串是不是null或无字符(trim后) * @param o * @return */ public static Boolean isEmpty(String o) { return (o == null || o.trim().length() == 0); } /** * 判断整形是否为null或0 * * @param value * @return */ public static Boolean isEmpty(Integer value) { return (value == null || value == 0); } /** * 判断整形是否为null或0 * * @param value * @return */ public static Boolean isEmpty(Long value) { return (value == null || value == 0); } /** * 判断List是否为空 * * @param list * @return */ public static Boolean isEmpty(List<?> list) { return (list == null || list.size() == 0); } /** * 判断Map是否为空 * @param map * @return */ public static Boolean isEmpty(Map<?, ?> map) { return (map == null || map.size() == 0); } /** * 判断Set是否为空 * @param set * @return */ public static Boolean isEmpty(Set<?> set) { return (set == null || set.size() == 0); } /** * 判断Object是否为空 * @param o * @return */ public static Boolean isEmpty(Object o) { // return o == null; if (o == null) { return true; } boolean isEmpty = false; if (o instanceof String) { isEmpty = isEmpty((String) o); } else if (o instanceof Integer) { isEmpty = isEmpty((Integer) o); } else if (o instanceof List<?>) { isEmpty = isEmpty((Integer) o); } else if (o instanceof Map<?, ?>) { isEmpty = isEmpty((Integer) o); } else if (o instanceof Set<?>) { isEmpty = isEmpty((Integer) o); } return isEmpty; } /** * 判断数组是否为空 * @param o * @return */ public static Boolean isEmpty(Object[] o) { return (o == null || o.length == 0); } /** * 根据指定的正则表达式验证字符串 * @param regex 正则表达式 * @param str 检验内容 * @return */ public static Boolean checkRegex(String regex, String str) { Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(str); return matcher.matches(); } /** * 验证正整数 * @param str 检验内容 * @param min 最小长度 * @param max 最大长度 * @return */ public static Boolean checkPositive(String str, int min, int max) { return checkRegex("^\\d{" + min + "," + max + "}$", str); } /** * 验证正整数 * @param str 检验内容 * @param length 整数的长度 * @return */ public static Boolean checkPositive(String str, int length) { return checkRegex("^\\d{" + length + "}$", str); } /** * 判断Object数组中的值是否为空,只要其中有一个为空就返回true<br/> * Integer为0会判断为空 * @param o * @return */ public static boolean oneMoreEmpty(Object[] o) { boolean b = false; for (int i = 0; i < o.length; i++) if (isEmpty(o[i])) { b = true; break; } return b; } /** * 判断时间是否是今天 * 是今天时间,返回true * 非今天时间,返回false * @param date * @return */ public static boolean timeIsTodayTime(Date date){ if(date==null){ return false; } SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); String paramDate=sdf.format(date); String nowDate=sdf.format(new Date()); return paramDate.equals(nowDate); } // public static void main(String[] args) { // System.out.println(checkPositive("123121", 5)); // System.out.println(checkPositive("121", 5,8)); // } /** * 根据指定的正则表达式校验字符串 * * @param reg * 正则表达式 * @param string * 拼配的字符串 * @return */ public static boolean startCheck(String reg, String string) { if (isEmpty(string)) { return false; } boolean tem = false; Pattern pattern = Pattern.compile(reg); Matcher matcher = pattern.matcher(string); tem = matcher.matches(); return tem; } public static final String REGEX_MOBILE = "^0?1(?:3[0-9]|4[457]|5[0-35-9]|8[0-35-9])\\d{8}$"; /** * 手机号码验证,11位 13 号段0-9 14 号段 5,7 15 号段除4以外 18 号段 6, 7, 8, 9 * */ public static boolean checkCellPhone(String cellPhoneNr) { // String reg = "^(13[0-9]|14[57]|15[^4]|18[6-9])\\d{8}$"; return startCheck(REGEX_MOBILE, cellPhoneNr); } public static final String REGEX_PHONE = "^(0[0-9]{2,3})?([2-9][0-9]{6,7})+(\\-[0-9]{1,4})?$|(^400[0-9]{7}$)"; public static boolean checkTel(String phone) { return startCheck(REGEX_PHONE, phone); } }
猜你喜欢
请下载代码后再发表评论
相关代码
最近下载
最近浏览
3334004690 LV10
3月6日
疯子庭 LV8
2021年11月30日
aaaahao LV13
2021年11月25日
Wanxig LV1
2021年6月7日
这不是一只柚子吗 LV6
2021年4月6日
小帆帆 LV1
2021年3月23日
2196316269 LV10
2021年2月24日
8战魂5无双8 LV43
2020年9月27日
yuankaichao LV2
2019年11月12日
tarcherMak
2019年11月4日
暂无贡献等级