验证工具类,提供验证email格式、是否ipv4、是否ipv6、是否中文、是否数字、正则表达式验证的方法。

源码如下:(点击下载 - ValidateUtils.java 、commons-lang-2.6.jarhttpclient-4.3.3.jar)

import java.util.regex.Matcher;
import java.util.regex.Pattern;
import org.apache.commons.lang.StringUtils;
import org.apache.http.conn.util.InetAddressUtils; /**
* 验证工具类
*
*/
public class ValidateUtils { private static transient final String REGEX_IS_CHINESE = "^[\\u4e00-\\u9fa5][\\u4e00-\\u9fa5]*[\\u4e00-\\u9fa5]$";
private static transient final String REGEX_IS_EMAIL = "^([a-z0-9A-Z]+[-_|\\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-zA-Z]{2,}$"; /**
* 是否email
*
* @param email
* a {@link java.lang.String} object.
* @return 验证结果
*/
public static boolean isEmail(String email) {
return isMatch(email, REGEX_IS_EMAIL);
} /**
* 是否email
*
* @param email
* a {@link java.lang.String} object.
* @return 验证结果
*/
public static boolean isNotEmail(String email) {
return !isEmail(email);
} /**
* 是否ipv4
*
* @param ipv4
* a {@link java.lang.String} object.
* @return 验证结果
*/
public static boolean isIPv4(String ipv4) {
return InetAddressUtils.isIPv4Address(ipv4);
} /**
* 是否ipv4
*
* @param ipv4
* a {@link java.lang.String} object.
* @return 验证结果
*/
public static boolean isNotIPv4(String ipv4) {
return !isIPv4(ipv4);
} /**
* 是否ipv6
*
* @param ipv6
* a {@link java.lang.String} object.
* @return 验证结果
*/
public static boolean isIPv6(String ipv6) {
return InetAddressUtils.isIPv6Address(ipv6);
} /**
* 是否ipv6
*
* @param ipv6
* a {@link java.lang.String} object.
* @return 验证结果
*/
public static boolean isNotIPv6(String ipv6) {
return !isIPv6(ipv6);
} /**
* 是否中文
*
* @param str
* a {@link java.lang.String} object.
* @return 验证结果
*/
public static boolean isChinese(String str) {
return isMatch(str, REGEX_IS_CHINESE);
} /**
* 是否数字
*
* @param str
* a {@link java.lang.String} object.
* @return 验证结果
*/
public static boolean isNumeric(String str) {
return StringUtils.isNumeric(str);
} /**
* 是否数字
*
* @param str
* a {@link java.lang.String} object.
* @return 验证结果
*/
public static boolean isNotNumeric(String str) {
return !isNumeric(str);
} /**
* 正则表达式验证
*
* @param str
* a {@link java.lang.String} object.
* @param regex
* a {@link java.lang.String} object.
* @return 验证结果
*/
public static boolean isMatch(String str, String regex) {
final Pattern pattern = Pattern.compile(regex);
final Matcher matcher = pattern.matcher(str);
if (!matcher.find()) {
return false;
}
return true;
} }

验证工具类 - ValidateUtils.java的更多相关文章

  1. 正则表达式验证工具类RegexUtils.java

    Java 表单注册常用正则表达式验证工具类,常用正则表达式大集合. 1. 电话号码 2. 邮编 3. QQ 4. E-mail 5. 手机号码 6. URL 7. 是否为数字 8. 是否为中文 9. ...

  2. Java常用正则表达式验证工具类RegexUtils.java

    import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegexUtils{ /** * 正则表达式 ...

  3. Java常用工具类---XML工具类、数据验证工具类

    package com.jarvis.base.util; import java.io.File;import java.io.FileWriter;import java.io.IOExcepti ...

  4. java后台表单验证工具类

    /** * 描述 java后台表单验证工具类 * * @ClassName ValidationUtil * @Author wzf * @DATE 2018/10/27 15:21 * @VerSi ...

  5. Java日期工具类,Java时间工具类,Java时间格式化

    Java日期工具类,Java时间工具类,Java时间格式化 >>>>>>>>>>>>>>>>>&g ...

  6. Java 通过Xml导出Excel文件,Java Excel 导出工具类,Java导出Excel工具类

    Java 通过Xml导出Excel文件,Java Excel 导出工具类,Java导出Excel工具类 ============================== ©Copyright 蕃薯耀 20 ...

  7. Java字符串转16 进制工具类Hex.java

    Java字符串转16 进制工具类Hex.java 学习了:https://blog.csdn.net/jia635/article/details/56678086 package com.strin ...

  8. Java Cookie工具类,Java CookieUtils 工具类,Java如何增加Cookie

    Java Cookie工具类,Java CookieUtils 工具类,Java如何增加Cookie >>>>>>>>>>>>& ...

  9. UrlUtils工具类,Java URL工具类,Java URL链接工具类

    UrlUtils工具类,Java URL工具类,Java URL链接工具类 >>>>>>>>>>>>>>>&g ...

随机推荐

  1. 我是IT小小鸟,老师我之前上传了!!!!老是请您看到我

    我是IT小小鸟读后感 世界上没有一蹴而就的成功者,只有头悬梁锥刺股的奋斗者.蜉蝣向往大鹏的辉煌,却不曾知大鹏以往的汗水.蜉蝣之所以为蜉蝣,是因为它犹如井底之蛙,目光短浅,之盲目地羡慕成功者,而大鹏之所 ...

  2. Linux网络编程实例解析

    **************************************************************************************************** ...

  3. 【BZOJ】【3172】【TJOI2013】单词

    AC自动机 Orz zyf 玛雅一开始连题意都没看懂……意思就是给你一篇文章的N个单词,问每个单词在这篇文章中各出现了几次?(这篇文章=N个单词) 那么我们建个AC自动机……对于每个单词来说,它出现的 ...

  4. 剑指offer--面试题21--相关

    题目:设计包含min函数的栈,pop(),push(),min()的时间复杂度均为O(1) 自己所写代码如下:(写‘栈’的代码还是有些不熟练!) #include <iostream> u ...

  5. 【bzoj1005】[HNOI2008]明明的烦恼

    1005: [HNOI2008]明明的烦恼 Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 4175  Solved: 1660[Submit][Stat ...

  6. ZOJ3229 Shoot the Bullet(有源汇的上下界最大流)

    #pragma warning(disable:4996) #include <iostream> #include <cstring> #include <string ...

  7. jquey ajax 无刷新提交form

    http://bbs.csdn.net/topics/380237868 $.ajax({ type: "POST", url:ajaxCallUrl, data:$('#your ...

  8. test1

    test1test1test1test1test1test1test1test1test1test1test1test1test1test1test1test1test1test1test1test1 ...

  9. java系统属性

    java系统属性 1. java.runtime.name:java的运行环境名称. 2. sun.boot.library.path:jdk\jre中的bin的路径 3. java.vm.versi ...

  10. PHP函数中默认参数的的写法

    函数可以定义 C++ 风格的标量参数默认值,如下所示: Example #3 在函数中使用默认参数 <?php function makecoffee($type = "cappucc ...