正则表达式工具类

正则表达式封装

Java正则表达式

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>.

蕃薯耀 2016年4月6日 09:45:10 星期三

http://fanshuyao.iteye.com/

package com.chinagas.org.common.utils;

import java.util.regex.Matcher;
import java.util.regex.Pattern; public final class RegUtils { /*------------------ 正则表达式 ---------------------*/
/**
* 邮箱
*/
public static final String REGEX_EMAIL = "^\\w+((-\\w+)|(\\.\\w+))*\\@[A-Za-z0-9]+((\\.|-)[A-Za-z0-9]+)*\\.[A-Za-z0-9]+$";
/**
* 手机号码
*/
public static final String REGEX_PHONE = "^13[0-9]{9}|15[012356789][0-9]{8}|18[0-9]{9}|(14[57][0-9]{8})|(17[015678][0-9]{8})$";
/**
* 仅中文
*/
public static final String REGEX_CHINESE = "^[\\u4E00-\\u9FA5\\uF900-\\uFA2D]+$";
/**
* 整数
*/
public static final String REGEX_INTEGER = "^-?[1-9]\\d*$";
/**
* 数字
*/
public static final String REGEX_NUMBER = "^([+-]?)\\d*\\.?\\d+$";
/**
* 正整数
*/
public static final String REGEX_INTEGER_POS = "^[1-9]\\d*$";
/**
* 浮点数
*/
public static final String REGEX_FLOAT = "^([+-]?)\\d*\\.\\d+$";
/**
* 正浮点数
*/
public static final String REGEX_FLOAT_POS = "^[1-9]\\d*.\\d*|0.\\d*[1-9]\\d*$";
/**
* 字母
*/
public static final String REGEX_LETTER = "^[A-Za-z]+$";
/**
* 大写字母
*/
public static final String REGEX_LETTER_UPPERCASE = "^[A-Z]+$";
/**
* 小写字母
*/
public static final String REGEX_LETTER_LOWERCASE = "^[a-z]+$";
/**
* 邮编
*/
public static final String REGEX_ZIPCODE = "^\\d{6}$";
/**
* ip v4地址
*/
public static final String REGEX_IP4 = "^(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)$";
/**
* 图片
*/
public static final String REGEX_PICTURE = "(.*)\\.(jpg|bmp|gif|ico|pcx|jpeg|tif|png|raw|tga)$";/**
/**
* 压缩文件
*/
public static final String REGEX_RAR = "(.*)\\.(rar|zip|7zip|tgz)$";
/**
* QQ号码,最短5位,最长15位数字
*/
public static final String REGEX_QQ = "^[1-9]\\d{4,14}$";
/**
* 日期(yyyy-MM-dd)
*/
public static final String REGEX_DATE = "^\\d{4}\\D+\\d{2}\\D+\\d{2}$";
/**
* 日期(yyyy-MM-dd),精确,能检查到2月及31号
*/
public static final String REGEX_DATE_PRECISE = "^((\\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]))))))";
/**
* 时间(HH:mm:ss或HH:mm)
*/
public static final String REGEX_TIME = "^((([0-1][0-9])|2[0-3]):[0-5][0-9])(:[0-5][0-9])?$"; /**
* 校验手机号码
* @param mobile
* @return
* @author lqyao
*/
public static final boolean isMoblie(String mobile){
boolean flag = false;
if (null != mobile && !mobile.trim().equals("") && mobile.trim().length() == 11) {
Pattern pattern = Pattern.compile(REGEX_PHONE);
Matcher matcher = pattern.matcher(mobile.trim());
flag = matcher.matches();
}
return flag;
} /**
* 校验邮箱
* @param value
* @return
* @author lqyao
*/
public static final boolean isEmail(String value){
boolean flag = false;
if (null != value && !value.trim().equals("")) {
Pattern pattern = Pattern.compile(REGEX_EMAIL);
Matcher matcher = pattern.matcher(value.trim());
flag = matcher.matches();
}
return flag;
} /**
* 校验密码
* @param password
* @return 长度符合返回true,否则为false
* @author lqyao
* @since 2015-09-24
*/
public static final boolean isPassword(String password){
boolean flag = false;
if (null != password && !password.trim().equals("")) {
password = password.trim();
if(password.length() >= 6 && password.length() <= 30){
return true;
}
}
return flag;
} /**
* 校验手机验证码
* @param value
* @return 符合正则表达式返回true,否则返回false
* @author lqyao
* @since 2015-09-24
*/
public static final boolean isPhoneValidateCode(String value){
boolean flag = false;
if (null != value && !value.trim().equals("")) {
Pattern pattern = Pattern.compile("^8\\d{5}$");
Matcher matcher = pattern.matcher(value.trim());
flag = matcher.matches();
}
return flag;
} /**
* 正则表达式校验,符合返回True
* @param regex 正则表达式
* @param content 校验的内容
* @return
* @author lqy
*/
public static boolean isMatch(String regex, CharSequence content){
return Pattern.matches(regex, content);
} public static boolean isUpperCase(String str){
if(StrUtils.isEmpty(str)){
return false;
}
String reg = "^[A-Z]$";
return isMatch(reg,str);
}
}

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>.

蕃薯耀 2016年4月6日 09:45:10 星期三

http://fanshuyao.iteye.com/

正则表达式工具类,正则表达式封装,Java正则表达式的更多相关文章

  1. java工具类(二)之java正则表达式表单验证

    java正则表达式表单验证类工具类(验证邮箱.手机号码.qq号码等) 这篇文章主要介绍了java使用正则表达式进行表单验证工具类,可以验证邮箱.手机号码.qq号码等方法,需要的朋友可以参考下. jav ...

  2. JAVA自动生成正则表达式工具类

    经过很久的努力,终于完成了JAVA自动生成正则表达式工具类.还记得之前需要正则,老是从网上找吗?找了想修改也不会修改.现在不用再为此烦恼了,使用此生成类轻松搞定所有正则表达式.赶快在同事面前炫一下吧. ...

  3. [Swift]正则表达式工具类

    正则表达式工具类 import Foundation //基于NSRegularExpression api 的正则处理工具类 public struct Regex { private let re ...

  4. 分页 工具类 前后台代码 Java JavaScript (ajax) 实现 讲解

    [博客园cnblogs笔者m-yb原创, 转载请加本文博客链接,笔者github: https://github.com/mayangbo666,公众号aandb7,QQ群927113708]http ...

  5. iOS开发--QQ音乐练习,旋转动画的实现,音乐工具类的封装,定时器的使用技巧,SliderBar的事件处理

    一.旋转动画的实现 二.音乐工具类的封装 -- 返回所有歌曲,返回当前播放歌曲,设置当前播放歌曲,返回下一首歌曲,返回上一首歌曲方法的实现 头文件 .m文件 #import "ChaosMu ...

  6. JDBC工具类—如何封装JDBC

    “获得数据库连接”操作,将在以后的增删改查所有功能中都存在,可以封装工具类JDBCUtils.提供获取连接对象的方法,从而达到代码的重复利用. 该工具类提供方法:public static Conne ...

  7. jdbc工具类的封装,以及表单验证数据提交后台

    在之前已经写过了jdbc的工具类,不过最近学习了新的方法,所以在这里重新写一遍,为后面的javaEE做铺垫: 首先我们要了解javaEE项目中,文件构成,新建一个javaEE项目,在项目中,有一个we ...

  8. swift项目第十天:网络请求工具类的封装

    import UIKit /* 必须先导入头文件:import AFNetworking */ import AFNetworking //MARK:-0:定义枚举:以枚举定义请求网络的get和pos ...

  9. jwt工具类的封装

    第一步先引入jar: <dependency> <groupId>com.nimbusds</groupId> <artifactId>nimbus-j ...

随机推荐

  1. BeRoTinyPascal

    https://github.com/BeRo1985/berotinypascal https://github.com/thachngopl/berotinypascal

  2. 协助ScriptCase7.1做些汉化矫正工作

    之前帮助Script.net做了一部分网站的汉化工作,不过我对ScriptCase自己做的网站不满意,对其汉化网站更是不满意. ScriptCase7出来之后,比较让人头疼的就是汉化的问题,较之v6, ...

  3. Activity的启动过程

    详见: http://www.cloudchou.com/android/post-805.html

  4. IIS中的Application.CommonAppDataPath

    C:\ProgramData\Microsoft Corporation\Internet Information Services\7.5.7600.16385

  5. oracle构建一致性读

    对于实际的业务系统,通常有一些热点的表,insert和delete的量非常大,这个时候就会发现一些查询语句的逻辑读比较偏高,这时可能就是oracle在构建一致性块的进行的consistent read ...

  6. 使用C#画图(饼图折线图)

    public PlaceHolder PlaceHolder1; //显示图像的控件 各个图像的类别名称如下: PictureType    图形种类    5    chChartTypeBarCl ...

  7. [转]使用Xcode和Instruments调试解决iOS内存泄露

    虽然iOS 5.0版本之后加入了ARC机制,由于相互引用关系比较复杂时,内存泄露还是可能存在.所以了解原理很重要. 这里讲述在没有ARC的情况下,如何使用Instruments来查找程序中的内存泄露, ...

  8. Android Fragment类方法

    public void onStart() 当该Fragment对象对用户可见时,该方法会被调用.该方法通常会跟它的Activity的生命周期的Activity.onStart()方法绑定. publ ...

  9. route命令详解与使用实例

    1.   使用背景 需要接入两个网络,一个是部署环境所在内网环境,这个环境是上不了外网, 外网环境很可能是一个无线网络.如果两者都连接上,很可能导致有一方不能起作用,即外网或内网上不了,常常需要使用繁 ...

  10. Web---session技术代码演示(request,session,servletContext)

    Session会话简介与基本知识点 当浏览器第一次访问服务器时,无论先访问哪一个页面,服务器就会给用户分配一个唯一的会话标识,即jsessionid然后以cookie的形式返回给用户. 会话是指在一段 ...