static boolean flag = false; static String regex = ""; public static boolean check(String str, String regex) { try { Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(str); flag = matcher.matches(); } catch (Exception e) { flag = false; } return flag; } /** * 验证非空 * * @param email * @return */ public static boolean checkNotEmputy(String notEmputy) { regex = "^\\s*$"; return check(notEmputy, regex) ? false : true; } /** * 验证邮箱 * * @param email * @return */ public static boolean checkEmail(String email) { // String regex = "^(\\w+((-\\w+)|(\\.\\w+))*)\\+\\w+((-\\w+)|(\\.\\w+))*\\@[A-Za-z0-9]+((\\.|-)[A-Za-z0-9]+)*\\.[A-Za-z0-9]+$"; // return check(email, regex); Pattern pattern = Pattern.compile("^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\\.[a-zA-Z0-9_-]+)+$"); Matcher matcher = pattern.matcher(email); return matcher.matches(); } /** * /* <br> 2019年1月16日已知 * 中国电信号段 * 133,149,153,173,174,177,180,181,189,199 * 中国联通号段 * 130,131,132,145,146,155,156,166,175,176,185,186 * 中国移动号段 * 134(0-8),135,136,137,138,139,147,148,150,151,152,157,158,159,165,178,182,183,184,187,188,198 * 上网卡专属号段(用于上网和收发短信,不能打电话) * 如中国联通的是145 * 虚拟运营商 * 电信:1700,1701,1702 * 移动:1703,1705,1706 * 联通:1704,1707,1708,1709,171 * 卫星通信: 1349 <br> 未知号段:141、142、143、144、154 * @param cellphone * @return */ public static boolean checkCellphone(String cellphone) { System.out.println("cellphone========"+cellphone); //联通好呐 130、131、132、145、155、156、166、171、175、176、185、186、196号。 //移动手机号段 132 134 135 136 137 138 139 147 150 151 152 155 157 158 159 182 183 187 188 //电信好吗号段 177,173,189,181,180,153,133,199 // String regex ="^(13[0-9]|14[5|7]|16[6]|15[0|1|2|3|5|6|7|8|9]|17[1|3|5|6|7]|18[0|1|2|3|5|6|7|8|9]|19[9])\\d{8}$"; String regex = "^((13[0-9])|(14[5-9])|(15([0-3]|[5-9]))|(16[6-7])|(17[1-8])|(18[0-9])|(19[1|3])|(19[5|6])|(19[8|9]))\\d{8}$"; return check(cellphone, regex); } /** * 验证固话号码 * * @param telephone * @return */ public static boolean checkTelephone(String telephone) { String regex = "^(0\\d{2}-\\d{8}(-\\d{1,4})?)|(0\\d{3}-\\d{7,8}(-\\d{1,4})?)$"; return check(telephone, regex); } /** * 验证传真号码 * * @param fax * @return */ public static boolean checkFax(String fax) { String regex = "^(0\\d{2}-\\d{8}(-\\d{1,4})?)|(0\\d{3}-\\d{7,8}(-\\d{1,4})?)$"; return check(fax, regex); } /** * 验证QQ号码 * * @param QQ * @return */ public static boolean checkQQ(String QQ) { String regex = "^[1-9][0-9]{4,} $"; return check(QQ, regex); }
记录一下,主要做手机号的验证,更新时间2021-11-09