验证工具类,提供验证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. 图解SQL的Join(转摘)

    转摘网址:http://coolshell.cn/articles/3463.html 对于SQL的Join,在学习起来可能是比较乱的.我们知道,SQL的Join语法有很多inner的,有outer的 ...

  2. 计算器软件的代码实现 (策略模式+asp.net)

    一 策略模式代码的编写 using System; using System.Collections.Generic; using System.Linq; using System.Web; /// ...

  3. 【POJ】【2104】区间第K大

    可持久化线段树 可持久化线段树是一种神奇的数据结构,它跟我们原来常用的线段树不同,它每次更新是不更改原来数据的,而是新开节点,维护它的历史版本,实现“可持久化”.(当然视情况也会有需要修改的时候) 可 ...

  4. Apache环境.htaccess伪静态301跳转(www与不带www)

    一般而言,我们使用的301跳转就是WWW与不带WWW域名之间的跳转,用行话说就是权重要归一.对于我们使用Apache环境的来说其实相对nginx比较简单,因为只需要我们在网站根目录有.htaccess ...

  5. .Net 命名(委托,事件==)

    委托及参数命名: public delegate void ClickedEventHandler(object sender, ClickedEventArgs e); ClickedEventHa ...

  6. FullPage.js全屏滚动插件学习总结

    如今我们经常能见到全屏网站,尤其是国外网站.这些网站用几幅很大的图片或色块做背景,再添加一些简单的内容,显得格外的高端大气上档次.比如 iPhone 5C 的介绍页面(查看),QQ浏览器的官网站.如果 ...

  7. cache应用(asp.net 2.0 SQL数据缓存依赖 [SqlCacheDependency ] )

    Asp.net 2.0 提供了一个新的数据缓存功能,就是利用sql server2005 的异步通知功能来实现缓存 1.首先在sqlserver2005 中创建一个test的数据库. 在SQL Ser ...

  8. linux 全自动提权 exp perl脚本

    linux 全自动提权 exp perl脚本 作者: admin 日期: 2013/01/19发表评论 (0) 查看评论   国外流传过来的 地址 http://dl.packetstormsecur ...

  9. 使用Varnish代替Squid做网站缓存加速器的详细解决方案----转载

    [文章作者:张宴 本文版本:v1.2 最后修改:2008.01.02 转载请注明出处:http://blog.s135.com] 我曾经写过一篇文章──<初步试用Squid的替代产品──Varn ...

  10. 在linux服务器上装svn版本管理,自动部署代码到项目

    在linux服务器上装svn版本管理,自动部署代码到项目 http://bbs.aliyun.com/read/9715.html?spm=5176.7114037.1996646101.1.W3zw ...