常用的正则表达式

/**
 * 流水号验证正则 只能为数字字母 开头和结尾, 中间可以包含 -
 */
private static final Pattern TXNOPATTERN = Pattern.compile("^[A-Za-z0-9][\\w\\-\\|]*[A-Za-z0-9]$");

/**
 * 描述信息验证正则 不能包含~ ^ # * & ; $ % @ ' " < > +  " ' / 这些特殊字符
 */
private static final Pattern DESCPATTERN = Pattern.compile("~|\\^|\\*|&|;|\\$|%|@|'|\"|<|>|\\+|\\\"|\\\'|/");

/**
 * 字母数字验证正则 只能包含字母和数字
 */
private static final Pattern ALNUMPATTERN = Pattern.compile("\\p{Alnum}+");

/**
 * 数字验证正则 只能包含数字
 */
private static final Pattern DIGITPATTERN = Pattern.compile("\\p{Digit}+");

/**
 * 数字验证正则 只能固定包含3位长度数字
 */
private static final Pattern DIGIT3PATTERN = Pattern.compile("\\d{3}");

/**
 * 字母验证正则 只能包含字母
 */
private static final Pattern ALPHAPATTERN = Pattern.compile("\\p{Alpha}+");

/**
 * 身份证号正则 只能为15位数字或18位数字,或17位数字加X
 */
public static final Pattern IDENTIFICATIONPATTERN = Pattern.compile("^(\\d{15}$|^\\d{18}$|^\\d{17}(\\d|X|x))$");

/**
 * 银行卡有效期正则 固定四位长度,后两位从01到12
 */
private static final Pattern VALIDATEPATTERN = Pattern.compile("^\\d{2}(0[1-9]|1[0-2])$");

/**
 * 17位时间字符串校验
 */
private static final Pattern TIMESTR17PATTERN = Pattern.compile("^((19|20)\\d\\d)(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[01])"
        + "(0\\d|1\\d|2[0-3])(0\\d|[1-5]\\d)(0\\d|[1-5]\\d)(\\d\\d\\d)$");

/**
 * 8位日期字符串校验
 */
private static final Pattern DATESTR8PATTERN = Pattern.compile("^((19|20)\\d\\d)(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[01])$");


private static final Pattern CELPATTERN = Pattern.compile("^[1][3,4,5,7,8][0-9]{9}$");


/**
 * 金额正则表达式
 */
private static final Pattern AMTPATTERN = Pattern.compile("^(([1-9]\\d{0,15}))$");

/**
 * 手机号正则表达式,支持:166、199、198
 */
private static final Pattern MOBILEPATTERN = Pattern.compile("^[1][3-9][0-9]{9}$");

/**
 * 个人银行卡号正则表达式
 */
private static final Pattern INDIBANKCARDPATTERN = Pattern.compile("^[0-9]{15,19}$");

/**
 * Email正则表达式
 */
private static final Pattern EMAILPATTERN = Pattern
        .compile("^[a-zA-Z0-9]((\\w|\\.|-)*[a-zA-Z0-9])?@([a-zA-Z0-9](([a-zA-Z0-9]|-)*[a-zA-Z0-9])?\\.)+[a-zA-Z]{2,6}$");

/**
 * TxSN的校验规则,前17位必须是时间戳格式(yyyyMMddHHmmssSSS)
 */
private static final Pattern TXSNPATTERN = Pattern.compile(
        "^((([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})(((0[13578]|1[02])(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)(0[1-9]|[12][0-9]|30))|(02(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))0229))(([0-1]\\d|2[0-3])[0-5]\\d[0-5]\\d\\d\\d\\d)\\p{Alnum}+$");
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值