验证工具类 - ValidateUtils.java
验证工具类,提供验证email格式、是否ipv4、是否ipv6、是否中文、是否数字、正则表达式验证的方法。
源码如下:(点击下载 -
ValidateUtils.java 、
commons-lang-2.6.jar、
httpclient-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的更多相关文章
- 正则表达式验证工具类RegexUtils.java
Java 表单注册常用正则表达式验证工具类,常用正则表达式大集合. 1. 电话号码 2. 邮编 3. QQ 4. E-mail 5. 手机号码 6. URL 7. 是否为数字 8. 是否为中文 9. ...
- Java常用正则表达式验证工具类RegexUtils.java
import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegexUtils{ /** * 正则表达式 ...
- Java常用工具类---XML工具类、数据验证工具类
package com.jarvis.base.util; import java.io.File;import java.io.FileWriter;import java.io.IOExcepti ...
- java后台表单验证工具类
/** * 描述 java后台表单验证工具类 * * @ClassName ValidationUtil * @Author wzf * @DATE 2018/10/27 15:21 * @VerSi ...
- Java日期工具类,Java时间工具类,Java时间格式化
Java日期工具类,Java时间工具类,Java时间格式化 >>>>>>>>>>>>>>>>>&g ...
- Java 通过Xml导出Excel文件,Java Excel 导出工具类,Java导出Excel工具类
Java 通过Xml导出Excel文件,Java Excel 导出工具类,Java导出Excel工具类 ============================== ©Copyright 蕃薯耀 20 ...
- Java字符串转16 进制工具类Hex.java
Java字符串转16 进制工具类Hex.java 学习了:https://blog.csdn.net/jia635/article/details/56678086 package com.strin ...
- Java Cookie工具类,Java CookieUtils 工具类,Java如何增加Cookie
Java Cookie工具类,Java CookieUtils 工具类,Java如何增加Cookie >>>>>>>>>>>>& ...
- UrlUtils工具类,Java URL工具类,Java URL链接工具类
UrlUtils工具类,Java URL工具类,Java URL链接工具类 >>>>>>>>>>>>>>>&g ...
随机推荐
- 重新认识Box Model、IFC、BFC和Collapsing margins
尊重原创,转载自: http://www.cnblogs.com/fsjohnhuang/p/5259121.html 肥子John^_^ 前言 盒子模型作为CSS基础中的基础,曾一度以为掌握了I ...
- Mybatis错误调试(二)
错误日志信息: Caused by: java.sql.BatchUpdateException: ORA-00911: 无效字符 at oracle.jdbc.driver.OraclePrepa ...
- WebServices中使用Session
默认情况下,Asp.net使用cookie来管理会话状态.因此,Asp.net假设客户端存储了会话cookie并将它与每一个请求一并发回给客户端. /// <summary> /// Su ...
- hdu 2426 Interesting Housing Problem 最大权匹配KM算法
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2426 For any school, it is hard to find a feasible ac ...
- AC自动机学习
今天包括这一周开始学习AC自动机了,有点晚,但我感觉努努力还来得及.4月份还得认认真真攻图论,加油! 为2个月后的邀请赛及省赛.东北赛做准备. 推荐AC自动机学习地址:http://www.cppbl ...
- 对话机器学习大神Yoshua Bengio(上)
Yoshua Bengio教授(个人主页)是机器学习大神之一,尤其是在深度学习这个领域.他连同Geoff Hinton老先生以及 Yann LeCun(燕乐存)教授,缔造了2006年开始的深度学习复兴 ...
- 如何将控制台程序包装成windows服务
1. 新建一个项目,或者从选择当前解决方案--右键-添加--新建项目 2. 选择(项目类型)Visual C#项目,(模板)Windows 服务,填写要创建的服务名称(修改默认的WindowServi ...
- ASP.NET页面刷新的实现方法总结
先看看ASP.NET页面刷新的实现方法: 第一: private void Button1_Click( object sender, System.EventArgs e ) { Response. ...
- HDOJ 1050 Moving Tables
Moving Tables Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Tot ...
- 如何使用 Docker 部署一个基于 Play Framework 的 Scala Web 应用?
本文作者 Jacek Laskowski 拥有近20年的应用程序开发经验,现 CodiLime 的软件开发团队 Leader,曾从 IBM 取得多种资格认证.在这篇博文中,Jacek 分享了 Wars ...