/*** <判断对象是否为null或者空>* * @param obj*            需要判断的对象* @return 如果对象为null或者空则返回true*/public static boolean isNullOrEmpty(Object obj) {if (obj == null|| "".equals(StringUtil.toString(obj).trim())) {return true;}return false;}/*** 判断是否是数字* * @param obj*            需要判断的元素* @return 是否是数字*/public static boolean isNumber(Object obj) {return checkPattern(StringUtil.toString(obj).trim(),"^[-+]?[0-9]+(\\.[0-9]+)?$");}/*** 判断是否是正数* * @param obj*            需要判断的元素* @return 是否是正数*/public static boolean isPositiveNumber(Object obj) {return checkPattern(StringUtil.toString(obj).trim(),"^[0-9]+(\\.[0-9]+)?$");}/*** 判断是否是Double类型* * @param obj*            需要判断的元素* @return 是否是Double类型(小数点后2位小数)*/public static boolean isDouble(Object obj) {return checkPattern(StringUtil.toString(obj).trim(),"^[0-9]+(.[0-9]{1,2})?$");}/*** 判断是否是int类型* * @param obj*            需要判断的元素* @return*/public static boolean isInt(Object obj) {return checkPattern(StringUtil.toString(obj).trim(), "^[0-9]?$");}/*** 判断集合不为空并且不为null* * @param con*            集合* @return 是否为空或者null*/public static boolean checkCollectionIsNullOrEmpty(@SuppressWarnings("rawtypes") Collection con) {return con == null || con.size() == 0;}/*** 判断字符串是否满足正则* * @param str*            需要判断的字符串* @param pattern*            正则* @return 判断结果*/public static boolean checkPattern(String str, String pattern) {try {if (pattern.startsWith("/")) {pattern = pattern.substring(1);}if (pattern.endsWith("/")) {pattern = pattern.substring(0, pattern.length() - 1);}return str.matches(pattern);} catch (Exception e) {e.printStackTrace();return false;}}/*** 判断字符串是否满足手机正则* * @param str*            手机号* @return 判断结果*/public static boolean checkPhone(String str) {// 手机正则String phone = "(13\\d|14[57]|15[^4,\\D]|17[678]|18\\d)\\d{8}|170[059]\\d{7}";return str.matches(phone);}/*** <判断字符串是否是汉字>* * @param str*            汉字* @return 判断结果*/public static boolean checkCharacters(String str) {// 汉字正则String chineseCharacters = "[\u4e00-\u9fa5]+";return str.matches(chineseCharacters);}/*** <判断邮箱格式是否满足条件>* * @param emailStr*            需要校验的邮箱字符串*/public static boolean checkEmail(String emailStr) {// 邮箱正则String emailRegStr = "^([a-z0-9A-Z]+[-|\\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-zA-Z]{2,}$";return emailStr.matches(emailRegStr);}/*** * <判断是否满足指定格式的日期>* * @param dateStr*            需要校验的日期字符串* @return*/public static boolean checkDate(String dateStr) {if (null == dateStr || "".equals(dateStr)) {return false;}boolean flag = false;Pattern pattern0 = null;Matcher match0 = null;String datePattern = "("+// 第一种情况为月份是大月的有31天。"(^\\d{3}[1-9]|\\d{2}[1-9]\\d{1}|\\d{1}[1-9]\\d{2}|[1-9]\\d{3}"+ // 年"([-/\\._]?)"+ // 时间间隔符(-,/,.,_)"(10|12|0?[13578])"+ // 大月"([-/\\._]?)"+ // 时间间隔符(-,/,.,_)"((3[01]|[12][0-9]|0?[1-9])?)"+ // 日(31)要验证年月因此出现0/1次"([\\s]?)"+ // 空格"((([0-1]?[0-9]|2[0-3]):([0-5]?[0-9]):([0-5]?[0-9]))?))$"+ // 时分秒"|"+ // 或// 第二种情况为月份是小月的有30天,不包含2月。"(^\\d{3}[1-9]|\\d{2}[1-9]\\d{1}|\\d{1}[1-9]\\d{2}|[1-9]\\d{3}"+ // 年"([-/\\._]?)"+ // 时间间隔符(-,/,.,_)"(11|0?[469])"+ // 小月不含2月"([-/\\._]?)"+ // 时间间隔符(-,/,.,_)"(30|[12][0-9]|0?[1-9])"+ // 日(30)"([\\s]?)"+ // 空格"((([0-1]?[0-9]|2[0-3]):([0-5]?[0-9]):([0-5]?[0-9]))?))$"+ // 时分秒"|"+ // 或// 第三种情况为平年月份是2月28天的。"(^\\d{3}[1-9]|\\d{2}[1-9]\\d{1}|\\d{1}[1-9]\\d{2}|[1-9]\\d{3}"+ // 年"([-/\\._]?)"+ // 时间间隔符(-,/,.,_)"(0?2)"+ // 平年2月"([-/\\._]?)"+ // 时间间隔符(-,/,.,_)"(2[0-8]|1[0-9]|0?[1-9])"+ // 日(28)"([\\s]?)"+ // 空格"((([0-1]?[0-9]|2[0-3]):([0-5]?[0-9]):([0-5]?[0-9]))?))$"+ // 时分秒"|"+ // 或// 第四种情况为闰年月份是2月29天的。// 可以被4整除但不能被100整除的年份。// 可以被400整除的数亦是能被100整除,因此后两位是00,所以只要保证前两位能被4整除即可。"(^((\\d{2})(0[48]|[2468][048]|[13579][26]))|((0[48]|[2468][048]|[13579][26])00)"+ "([-/\\._]?)" + "(0?2)" + "([-/\\._]?)" + "(29)" + "([\\s]?)"+ "((([0-1]?\\d|2[0-3]):([0-5]?\\d):([0-5]?\\d))?))$" + // 时分秒")";;pattern0 = Pattern.compile(datePattern);match0 = pattern0.matcher(dateStr);flag = match0.matches();return flag;}/*** * <判断是否满足指定格式的身份证号码>* * @param idCardStr*            需要校验的身份证号码的字符串* @return*/public static boolean checkIdCard(String idCardStr) {// 身份证号码正则String idCardReg = "(^\\d{18}$)|(^\\d{15}$)";return idCardStr.matches(idCardReg);}

转载于:https://www.cnblogs.com/ifindu-san/p/9625859.html

java验证工具类(待验证)相关推荐

  1. Android 身份证、车牌号验证工具类

    /*** 正在表达式验证工具类(验证身份证.车牌号等)* * @author chenlin* */ public class ValidateUtil {/*** 验证str是否为正确的身份证格式* ...

  2. java sm3国密算法加密、验证工具类

    java sm3国密算法加密.验证工具类 说明 maven依赖 完整代码 测试 说明 由于本人并不专于算法和密码学,所以如果发现工具类存在问题或者可优化地方,欢迎评论处提出. 工具类也可以直接使用封装 ...

  3. 苹果IAP内购验证工具类

    苹果内购 java验证类 package com.utils.ios; import lombok.extern.slf4j.Slf4j;import javax.net.ssl.*; import ...

  4. 【验证工具类-ValidateUtil-java】

    对于前端穿过来的值要做验证处理,但市面上已经存在很多验证框架了.这里作为自己实现得思路和整理,有需要特别验证得可以自己实现自己想要得. 实现一个工具类 /*** @author shezuoqiang ...

  5. 身份证、护照、军官证、户口本验证工具类

    身份证.护照.军官证.户口本验证工具类 public class CertificateValidUtils {/*** 中国公民身份证号码最小长度.*/public static final int ...

  6. Java 正则表达式 工具类 中文 英文 email 手机号 身份证 数字 日期

    大家好,我是烤鸭: 分享一个Java版本的正则校验工具类. Validation.java package com.xxx.xxx.common.utils;import java.util.rege ...

  7. Hutool Java常用工具类汇总

    简介 Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以"甜甜的". Hu ...

  8. Java 正则表达式工具类大全

    import java.util.regex.Matcher; import java.util.regex.Pattern; /**  * @author: nql  * @Description: ...

  9. Java 缓存工具类 Cache

    Java 缓存工具类 Cache 工具类定义 工具类定义 package com.demo.utils;import org.springframework.util.StringUtils;impo ...

最新文章

  1. SAP QM初阶之事务代码CR05查询QM Work Center List
  2. 工作以后如何有效学习
  3. 【PAT - 甲级1006】Sign In and Sign Out (25分)(STLmap)
  4. keil 函数最多可以传几个参数_007 函数进阶,来做一次比较正式的作业
  5. FastDFS+Nginx+Module
  6. mysql自带计划任务
  7. autojs遍历当前页面所有控件_解放双手,手机自动化神器-AutoJS的使用
  8. OPPO Enco X无线降噪耳机体验评测,加钱变强!
  9. 在IDEA中如何使用eclipse快捷键
  10. 用户兴趣模型分类以及推荐系统技术调研
  11. python爬取基金净值_Python爬虫周记之案例篇——基金净值爬取(上)
  12. React Antd4 CRA / Next.js / Vite 按需加载组件的 CSS / Less
  13. 通过httpurlconnection发带图片的文件
  14. HTML 字体图标的引入
  15. 查询表空间建立表空间和删除表空间
  16. 【全教程】qt连接mysql——从qt编译mysql驱动到qt连接mysql数据库(一、编译连接前准备)
  17. 安装系列—火狐浏览器添加组件‘firebug’却无法找到?
  18. Docker知识点整理
  19. 最近看的几部不错的电影
  20. 基于51单片机密码锁-舵机开锁-CXM

热门文章

  1. vshost32.exe停止工作
  2. 直接在 DNA 上执行 SQL 操作,已通过 PostgreSQL 验证
  3. C#坏习惯:通过不好的例子学习如何制作好的代码——第2部分
  4. python快速排序最简单写法_面试官:来,这位精神小伙,简简单单写个快速排序吧...
  5. adprw指令通讯案例_超实用,非常典型的Modbus通讯项目案例,三分钟学会
  6. python元类使用场景_python 元类的使用
  7. 为什么一个程序中变量只能定义一次_什么是闭包?为什么叫闭包?
  8. checkbox的全选与反选
  9. 2019湖南职高计算机总分是多少,2019湖南高职单招一般多少分能过
  10. java图片特效轮播代码_JQuery实现图片轮播效果