package com.codebase.util.validate; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * @describe:常用正则校验 * @author:houkai * @Date: 2018/4/4 11:07 */ public class ValidateUtil { private static final String IPADDRESS_PATTERN = "^([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\." + "([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.([01]?\\d\\d?|2[0-4]\\d|25[0-5])$"; /** * @Title: validateIpAddress * @Description: 验证一个字符串是否为ip地址 * @param ipAddress * @return boolean 返回类型 */ public static boolean validateIpAddress(String ipAddress) { if(null==ipAddress){ return false; } Pattern pattern = Pattern.compile(IPADDRESS_PATTERN); Matcher matcher = pattern.matcher(ipAddress); return matcher.matches(); } /** * @Title: validateNumber * @Description: 验证一个字符串是否为数字 * @param number * @return boolean 返回类型 */ public static boolean validateNumber(String number) { if(null==number){ return false; } for (int i = 0; i < number.length(); i++) { if (!Character.isDigit(number.charAt(i))) { return false; } } return true; } /** * 校验金额 * @param sParamValue */ public static boolean validateMoney(String sParamValue){ boolean result = true; Pattern pattern = Pattern.compile("^\\d{1,26}\\.?\\d{0,4}$"); Matcher isMoney = pattern.matcher(sParamValue); if( !isMoney.matches()){ result = false; } return result; } /** * 校验利率 * @param sParamValue */ public static boolean validateRate(String sParamValue){ boolean result = true; Pattern pattern = Pattern.compile("^\\d{1,5}\\.?\\d{0,4}$"); Matcher isMoney = pattern.matcher(sParamValue); if( !isMoney.matches()){ result = false; } return result; } /** * 校验价值 * @param sParamValue */ public static boolean validateValue(String sParamValue){ boolean result = true; Pattern pattern = Pattern.compile("^\\d{1,18}\\.?\\d{0,2}$"); Matcher isValue = pattern.matcher(sParamValue); if( !isValue.matches()){ result = false; } return result; } /** * 校验邮箱格式 */ public static boolean validateEmail(String sParamValue) { boolean result = true; Pattern pattern = Pattern.compile("^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\\.[a-zA-Z0-9_-]+)+$"); Matcher isEmail = pattern.matcher(sParamValue); if (!isEmail.matches()) { result = false; } return result; } /** * 数字位数和小数校验 * 通过返回true,否则false */ public static boolean validateNumber(String strParam, Integer length, Integer decimal) { boolean result = true; Integer integer = length - decimal; String regex = "^\\d{1," + integer + "}\\.?\\d{0," + decimal + "}$"; Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(strParam); if (!matcher.matches()) { result = false; } return result; } }