VerifyTool.java import java.util.UUID;import java.util.regex.Pattern;import org.apache.commons.lang3.StringUtils;public class VerifyTool { private final static Pattern EMAILER = Pattern.compile("\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\
import java.util.UUID; import java.util.regex.Pattern; import org.apache.commons.lang3.StringUtils; public class VerifyTool { private final static Pattern EMAILER = Pattern.compile("\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*"); private final static Pattern MOBILER = Pattern.compile( "^(((13[0-9])|(14[5,7])|(15([0-3]|[5-9]))|(17[0,3,6-8])|(18[0-9]))\\d{8})|(0\\d{2}-\\d{8})|(0\\d{3}-\\d{7,8})$"); private final static Pattern LINKER = Pattern.compile("[a-zA-z]+://[^\\s]*"); private final static Pattern DATER = Pattern.compile("^(\\d{4})-(0\\d{1}|1[0-2])-([012]\\d{1}|3[01])$"); public final static int LENGTH_OF_UUID = UUID.randomUUID().toString().length(); public final static int LENGTH_OF_UUID_SPLITTED = 5; /** * 检查邮箱格式合法性 * * @param email * @return */ public static boolean checkEmail(String email) { if (StringUtils.isBlank(email)) { return false; } return EMAILER.matcher(email).matches(); } /** * 检查手机格式合法性 * * @param mobile * @return */ public static boolean checkMobile(String mobile) { if (StringUtils.isBlank(mobile)) { return false; } return MOBILER.matcher(mobile).matches(); } /** * 检查链接格式合法性 * * @param link * @return */ public static boolean checkLink(String link) { if (StringUtils.isBlank(link)) { return false; } return LINKER.matcher(link).matches(); } /** * 检查日期格式,格式:yyyy-MM-dd 注:这里没有判断闰年等的逻辑,仅判断基本的格式和数值范围 * * @param dateStr * @return */ public static boolean checkDate(String dateStr) { if (StringUtils.isBlank(dateStr)) { return false; } return DATER.matcher(dateStr).matches(); } /** * 检查是否数字 * * @param number * @return */ public static boolean checkNumber(String number) { return StringUtils.isNotBlank(number) && StringUtils.isNumeric(number); } /** * 使用自定义正则表达式,检查数据格式 * * @param toCheckValue 要检查的数据 * @param regular 正则表达式 * @return 如果满足条件,返回true;否则,返回false。 */ public static boolean checkByRegular(String toCheckValue, String regular) { if (StringUtils.isBlank(toCheckValue)) { return false; } Pattern myRegular = Pattern.compile(regular); return myRegular.matcher(toCheckValue).matches(); } /** * 检查所有输入是否有空值 * * @param inputList * @return true:有空值;false:无空值 */ public static boolean isInputBlank(String... inputList) { for (String input : inputList) { if (StringUtils.isBlank(input)) { return true; } } return false; } /** * 检查输入的长度是否符合范围 * * @param input * @param low * @param high * @param includeLow * @param includeHigh * @return */ public static boolean checkInputLength(String input, int low, int high, boolean includeLow, boolean includeHigh) { if (StringUtils.isBlank(input)) { return false; } int length = StringUtils.length(input); if ((length > low && length < high) || (includeLow && length == low) || (includeHigh && length == high)) { return true; } return false; } /** * 检查输入的最大长度 * * @param input * @param high * @param include * @return */ public static boolean checkInputMaxLength(String input, int high, boolean include) { int length = StringUtils.length(input); if (length < high || (include && length == high)) { return true; } return false; } /** * 检查输入的最小长度 * * @param input * @param low * @param include * @return */ public static boolean checkInputMinLength(String input, int low, boolean include) { int length = StringUtils.length(input); if (length > low || (include && length == low)) { return true; } return false; } /** * 判断是否正确格式的UUID字符串 * * @param uuidString * @return */ public static boolean isValidUUIDString(String uuidString) { if (StringUtils.isBlank(uuidString) || LENGTH_OF_UUID != uuidString.length()) { return false; } String[] components = uuidString.split("-"); if (components.length != LENGTH_OF_UUID_SPLITTED) { return false; } return true; } }