`

java数据类型验证工具类

 
阅读更多
package net.hlj.common.util;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * @项目名:houseInfo
 * @包名:net.hlj.common.util
 * @文件名:DataValidator.java
 * @日期:Feb 23, 2012 3:32:01 PM
 * @备注:数据验证类
 * @作者:apple
 */
public class DataValidator {
	/**
	 * 是否是整数
	 * @param value
	 */
	public static boolean isIntege(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^-?[1-9]\\d*$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是正整数
	 * @param value
	 */
	public static boolean isIntege1(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^[1-9]\\d*$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是负整数
	 * @param value
	 */
	public static boolean isIntege2(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^-[1-9]\\d*$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是数字
	 * @param value
	 */
	public static boolean isNum(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^([+-]?)\\d*\\.?\\d+$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是正数(正整数 + 0)
	 * @param value
	 */
	public static boolean isNum1(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^[1-9]\\d*|0$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是负数(负整数 + 0)
	 * @param value
	 */
	public static boolean isNum2(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^-[1-9]\\d*|0$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是浮点数
	 * @param value
	 */
	public static boolean isDecmal(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^([+-]?)\\d*\\.\\d+$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是正浮点数
	 * @param value
	 */
	public static boolean isDecmal1(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^[1-9]\\d*.\\d*|0.\\d*[1-9]\\d*$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是负浮点数
	 * @param value
	 */
	public static boolean isDecmal2(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^-([1-9]\\d*.\\d*|0.\\d*[1-9]\\d*)$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是浮点数
	 * @param value
	 */
	public static boolean isDecmal3(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^-?([1-9]\\d*.\\d*|0.\\d*[1-9]\\d*|0?.0+|0)$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是非负浮点数(正浮点数 + 0)
	 * @param value
	 */
	public static boolean isDecmal4(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^[1-9]\\d*.\\d*|0.\\d*[1-9]\\d*|0?.0+|0$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是非正浮点数(负浮点数 + 0)
	 * @param value
	 */
	public static boolean isDecmal5(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^(-([1-9]\\d*.\\d*|0.\\d*[1-9]\\d*))|0?.0+|0$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是邮件
	 * @param value
	 */
	public static boolean isEmail(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^\\w+((-\\w+)|(\\.\\w+))*\\@[A-Za-z0-9]+((\\.|-)[A-Za-z0-9]+)*\\.[A-Za-z0-9]+$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是颜色
	 * @param value
	 */
	public static boolean isColor(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^[a-fA-F0-9]{6}$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是url
	 * @param value
	 */
	public static boolean isUrl(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^http[s]?:\\/\\/([\\w-]+\\.)+[\\w-]+([\\w-./?%&=]*)?$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是中文
	 * @param value
	 */
	public static boolean isChinese(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^[\\u4E00-\\u9FA5\\uF900-\\uFA2D]+$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是ACSII字符
	 * @param value
	 */
	public static boolean isAscii(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^[\\x00-\\xFF]+$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是邮编
	 * @param value
	 */
	public static boolean isZipcode(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^\\d{6}$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是手机
	 * @param value
	 */
	public static boolean isMobile(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^(13|15)[0-9]{9}$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是ip地址
	 * @param value
	 */
	public static boolean isIp(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^(25[0-5]|2[0-4]\\d|[0-1]\\d{2}|[1-9]?\\d)\\.(25[0-5]|2[0-4]\\d|[0-1]\\d{2}|[1-9]?\\d)\\.(25[0-5]|2[0-4]\\d|[0-1]\\d{2}|[1-9]?\\d)\\.(25[0-5]|2[0-4]\\d|[0-1]\\d{2}|[1-9]?\\d)$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是非空
	 * @param value
	 */
	public static boolean isNotempty(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^\\S+$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是图片
	 * @param value
	 */
	public static boolean isPicture(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("(.*)\\.(jpg|bmp|gif|ico|pcx|jpeg|tif|png|raw|tga)$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是压缩文件
	 * @param value
	 */
	public static boolean isRar(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("(.*)\\.(rar|zip|7zip|tgz)$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是日期
	 * @param value
	 */
	public static boolean isDate(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^((\\d{2}(([02468][048])|([13579][26]))[\\-\\/\\s]?((((0?[13578])|(1[02]))[\\-\\/\\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\\-\\/\\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\\-\\/\\s]?((0?[1-9])|([1-2][0-9])))))|(\\d{2}(([02468][1235679])|([13579][01345789]))[\\-\\/\\s]?((((0?[13578])|(1[02]))[\\-\\/\\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\\-\\/\\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\\-\\/\\s]?((0?[1-9])|(1[0-9])|(2[0-8]))))))(\\s(((0?[0-9])|([1-2][0-3]))\\:([0-5]?[0-9])((\\s)|(\\:([0-5]?[0-9])))))?$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是QQ号码
	 * @param value
	 */
	public static boolean isQq(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^[1-9]*[1-9][0-9]*$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是电话号码的函数(包括验证国内区号,国际区号,分机号)
	 * @param value
	 */
	public static boolean isTel(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^(([0\\+]\\d{2,3}-)?(0\\d{2,3})-)?(\\d{7,8})(-(\\d{3,}))?$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 用来用户注册。匹配由数字、26个英文字母或者下划线组成的字符串
	 * @param value
	 */
	public static boolean isUsername(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^\\w+$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是字母
	 * @param value
	 */
	public static boolean isLetter(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^[A-Za-z]+$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是大写字母
	 * @param value
	 */
	public static boolean isLetter_u(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^[A-Z]+$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是大写字母
	 * @param value
	 */
	public static boolean isLetter_l(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^[a-z]+$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	/**
	 * 是否是价格
	 * @param value
	 */
	public static boolean isPrice(String value){
		Pattern p=null;//正则表达式
		Matcher m=null;//操作符表达式
		boolean b=false;
		p=p.compile("^([1-9]{1}[0-9]{0,}(\\.[0-9]{0,2})?|0(\\.[0-9]{0,2})?|\\.[0-9]{1,2})$");
		m=p.matcher(value);
		b=m.matches();
		return b;
	}
	
	public static void main(String[] args) {
		boolean b=isPrice("25.67");
		System.out.println(b);
	}
}

 

分享到:
评论

相关推荐

    java验证文件真实格式和编码格式工具类

    `java验证文件真实格式和编码格式工具类` 提供的功能对于处理不同来源的文件至关重要,尤其是在处理用户上传的文件或跨平台数据交换时。通过`VerifyFileType.java` 和 `VerifyFileEncoder.java`,开发者可以确保正确...

    常用验证工具类

    常用验证工具类,包括邮箱,手机,座机号,非零,数字,大小写,中文,条形码,IP,URL地址,html正则表达式验证等

    java mail工具类

    MIME(Multipurpose Internet Mail Extensions)标准扩展了邮件格式,支持多种类型的数据,如文本、图片、附件等。JavaMail API 提供了`MimeMessage`类来处理MIME格式的邮件。 9. **邮件认证**: 邮件服务器通常...

    java银行工具类java银行工具类

    银行的机构号 银行卡的卡的类型 银行卡的卡种 工具类是由java 编写 其他的开发语言 也可以参考 包含了4800 +种卡种 自己测试了 还是比较全的 比支付宝提供的接口返回的卡种还要全 读取银行数据文件的时候 ...

    java后台注解校验工具类

    在Java开发中,后台注解校验是一种常见且强大的功能,它允许开发者通过在模型类的属性上添加特定的注解来定义数据验证规则。...正确地使用注解和验证工具类,能够减少因数据问题导致的程序错误,增强系统的健壮性。

    java短信服务工具类

    Java短信服务工具类是开发过程中常见的一种实用组件,主要用于实现应用程序与短信服务提供商之间的交互。在Java编程中,这样的工具类通常包含了一系列方法,用于发送、接收和处理短信。下面我们将详细探讨Java短信...

    java常用的工具类

    在Java编程中,工具类是封装了特定功能的类,它们通常包含静态方法,以便开发者在不创建对象的情况下调用这些方法。以下是一些在Java中常用的工具类及其功能详解: 1. **Base64**: Base64是网络上最常见的用于传输8...

    28个java常用的工具类

    27. **TypeConverter类**:数据类型转换工具类,方便不同类型的相互转换。 28. **StringUtils类**:字符串操作的扩展工具类,可能包含一些额外的字符串处理方法。 以上只是对一些常见Java工具类的概述,实际的"28...

    java 调用 webService工具类

    总的来说,"java 调用 webService工具类"是一个用于简化Java应用程序调用SOAP WebService的实用工具,它封装了请求构建、发送、响应处理等复杂流程,让开发者能更专注于业务逻辑而不是底层通信细节。了解并熟练使用...

    java高效开发26个工具类

    在Java编程领域,工具类(Utility Class)是程序员日常工作中不可或缺的部分。这些工具类提供了许多通用的方法,可以显著提高开发效率。"java高效开发26个工具类"这个资源包含了26个精心设计的工具类,每个类都含有...

    Java工具类

    本资源提供的五个Java工具类涵盖了日期时间处理、数字格式化、参数操作、字符串操作以及数据校验等多个方面,这对于开发人员来说是非常实用的。下面我们将对每个工具类进行详细解释。 1. **日期时间工具类**: 这...

    java代码:java工具类-javaUtils多种工具类-正则工具-base64工具等

    除了这两个主要工具类,`javaUtils`文件夹中可能还包含其他类型的工具类,如日期时间工具、字符串处理工具、集合操作工具等。这些工具类通常具有高度封装和可重用性,可以帮助开发者快速实现功能,减少重复代码,...

    java操作Access数据库文件工具类

    标题中的“Java操作Access数据库文件工具类”指的是使用Java编程语言来与Microsoft Access数据库进行交互的工具类。在Java中,我们通常通过JDBC(Java Database Connectivity)API来实现这样的功能,它允许Java程序...

    Java将2个List集合合并到一个List里面并排序工具类

    Java将2个List集合合并到一个List里面并排序工具类 1、Java编程资源,定义了一个名为`ListMerger`的工具类,主要包含一个名为`... 5、工具类提供有测试的方法及案例,可以自主模拟验证。 6、有任何问题可私信博主。

    JAVA微信开发封装好的工具类及JAR包

    3. **支付通知处理**: 微信会在用户支付成功后发送通知到开发者设定的回调URL,工具类会提供处理这些通知的方法,验证签名、解析数据并更新订单状态。此外,可能还包括重试机制,以防网络问题导致的通知丢失。 4. *...

    java常用工具类整理

    "java常用工具类整理"这个主题涵盖了Java开发中常用的工具类,这些类在日常编程中非常实用,能大大提高开发效率。这里我们将深入探讨一些常见的Java工具类,并结合`com-jarvis-base`这个文件名,推测这是一个基础...

    5年Java开发常用工具类

    在Java开发过程中,工具类是必不可少的组成部分,它们通常包含了各种通用功能的静态方法,能够极大地提高开发效率和代码质量。这位拥有五年经验的开发者分享的工具类集合,覆盖了数据库连接、格式转换、文件操作和...

    java Email工具类

    总的来说,Java Email工具类是一个强大的工具,可以帮助开发者方便地发送包含各种数据类型的邮件,同时保证了邮件传输的安全性。通过理解和使用JavaMail API及相关的MIME概念,开发者可以创建出功能丰富的邮件服务...

    java正则表达式验证工具类

    本文将介绍一个Java正则表达式验证工具类,通过一系列的常量定义,实现对不同格式数据的校验功能。 首先,我们定义了Email的正则表达式。Email正则表达式应该能够匹配标准的电子邮件地址格式,例如:\w+(\\.\\w+)*@...

    javautils一些工具类

    类型转换在Java中并不总是直截了当的,JavaUtils可能会包含一些帮助转换数据类型的方法,如字符串转数字、对象强制转换等。 8. **验证与校验**: 这些工具类可能提供对输入数据的验证服务,如检查邮箱格式、手机...

Global site tag (gtag.js) - Google Analytics