package com.zcloud.util; import java.util.Random; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * 说明:常用工具 * 作者:luoxiaobao * 官网:www.qdkjchina.com */ public class Tools { /** * 随机生成六位数验证码 * @return */ public static int getRandomNum(){ Random r = new Random(); return r.nextInt(900000)+100000;//(Math.random()*(999999-100000)+100000) } /** * 随机生成四位数验证码 * @return */ public static int getRandomNum4(){ Random r = new Random(); return r.nextInt(9000)+1000; } /** * 检测字符串是否不为空(null,"","null") * @param s * @return 不为空则返回true,否则返回false */ public static boolean notEmpty(String s){ return s!=null && !"".equals(s) && !"null".equals(s)&& !"undefined".equals(s); } /** * 检测字符串是否为空(null,"","null") * @param s * @return 为空则返回true,不否则返回false */ public static boolean isEmpty(String s){ return s==null || "".equals(s) || "null".equals(s); } public static boolean isEmpty (Object obj) { return obj ==null || "".equals(obj); } /** * 字符串转换为字符串数组 * @param str 字符串 * @param splitRegex 分隔符 * @return */ public static String[] str2StrArray(String str,String splitRegex){ if(isEmpty(str)){ return null; } return str.split(splitRegex); } /** * 用默认的分隔符(,)将字符串转换为字符串数组 * @param str 字符串 * @return */ public static String[] str2StrArray(String str){ return str2StrArray(str,",\\s*"); } /** * 验证邮箱 * @param email * @return */ public static boolean checkEmail(String email){ boolean flag = false; try{ String check = "^([a-z0-9A-Z]+[-|_|\\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-zA-Z]{2,}$"; Pattern regex = Pattern.compile(check); Matcher matcher = regex.matcher(email); flag = matcher.matches(); }catch(Exception e){ flag = false; } return flag; } /** * 验证手机号码 * @param mobiles * @return */ public static boolean checkMobileNumber(String mobileNumber){ boolean flag = false; try{ Pattern regex = Pattern.compile("^(((13[0-9])|(15([0-3]|[5-9]))|(18[0,5-9]))\\d{8})|(0\\d{2}-\\d{8})|(0\\d{3}-\\d{7})$"); Matcher matcher = regex.matcher(mobileNumber); flag = matcher.matches(); }catch(Exception e){ flag = false; } return flag; } /** * 检测KEY是否正确 * @param paraname 传入参数 * @param FKEY 接收的 KEY * @return 为空则返回true,不否则返回false */ public static boolean checkKey(String paraname, String FKEY){ paraname = (null == paraname)? "":paraname; return MD5.md5(paraname+DateUtil.getDays()+",fh,").equals(FKEY); } /** 转半角的函数(DBC case)

全角空格为12288,半角空格为32 其他字符半角(33-126)与全角(65281-65374)的对应关系是:均相差65248 * @param input 任意字符串 * @return 半角字符串 * */ public static String ToDBC(String input) { char[] c = input.toCharArray(); for (int i = 0; i < c.length; i++) { if (c[i] == 12288) { //全角空格为12288,半角空格为32 c[i] = (char) 32; continue; } if (c[i] > 65280 && c[i] < 65375) //其他字符半角(33-126)与全角(65281-65374)的对应关系是:均相差65248 c[i] = (char) (c[i] - 65248); } return new String(c); } public static String replaceBlank(String str) { String dest = ""; if (str != null) { Pattern p = Pattern.compile("\\s*|\t|\r|\n"); Matcher m = p.matcher(str); dest = m.replaceAll(""); } return dest; } public static String excelHandle (String string) { String aString = string.replaceAll(" ", ""); aString = ToDBC(aString); aString = replaceBlank(aString); return aString; } public static String excelHandle (Object object) { String aString = object.toString().replaceAll(" ", ""); aString = ToDBC(aString); aString = replaceBlank(aString); return aString; } public static void main(String[] args) { String aString = " afjaisjfasjfasij "; String bString = ""; bString= excelHandle(aString); System.out.println("bString:"+bString+"."); System.out.println("aString:"+aString+"."); } public static boolean contains(String[] array, String target) { for (int i = 0; i < array.length; i++) { if (array[i].equals(target)) { return true; } } return false; } }