正则表达式工具类

正则表达式封装

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. 常用模式之Command模式入门

    package com.zhao.cmd.a; /** * 客户端调用 * 烧烤摊 * * @author LuZhao * */ public class App { public static v ...

  2. Qt之自定义插件(for Qt Designer)

    之前Blog里面有关于QWT的编译.配置.使用的文章,分别是在VS与Creator下进行的. QWT编译.配置.使用(VS2010 + Qt5.1.0). QWT编译.配置.使用(Qt Creator ...

  3. git使用的常见命令(一)

    .查看当前有哪些branch git branch 其中有*选中的分支是你的当前使用的分支 .新建一个分支 git branch dev_xiaoming .切换到一个分支 git checkout ...

  4. 利用if else 求房贷

    static void Main(string[] args)        {            while (true)     //主要就是公式的运用和if else 的嵌套         ...

  5. 替换SQL Server字段中的换行符,回车符

    replace(string_expression , string_pattern , string_replacement) 第一个参数:要查找的字段. 第二个参数:要查找的字符. 第三个参数:要 ...

  6. 计算几何(容斥原理,圆交):HDU 5120 Intersection

    Matt is a big fan of logo design. Recently he falls in love with logo made up by rings. The followin ...

  7. Method Overloading in WCF zt

    Method overloading is the process of implementing Polymorphism in Object-Oriented Programming. A met ...

  8. Exists与In效率分析

    A: In:是把外表和内表做Hash 连接,而exists 是对外表作loop 循环,每次loop循环再对内表进行查询. 当查询两个表的大小相当时,用In 和 exists差别不大. 如果两个表中一个 ...

  9. 各种jee服务器的比较,tomcat, jboss, glassfish, websphere, weblogic

    tomcat, 开源,只是一个 servlet jsp 容器. jboss, 开源,是一个j2ee 应用服务器,容器支持 servlet, jsp, ejb,jms等. 稳定且实现了全部j2ee ap ...

  10. Shell break和continue命令

    在循环过程中,有时候需要在未达到循环结束条件时强制跳出循环,像大多数编程语言一样,Shell也使用 break 和 continue 来跳出循环. break命令 break命令允许跳出所有循环(终止 ...