import java.util.regex.Pattern;
/**
* 校验器:利用正则表达式校验邮箱、手机号等
*
*/ public class Validator {

/**
* 正则表达式:验证用户名
*/
//public static final String REGEX_USERNAME = "^[a-zA-Z]\\w{5,17}$";
  public static final String REGEX_USERNAME = "^[a-zA-Z]\\w{2,20}$";

/**
* 正则表达式:验证密码
*/
  public static final String REGEX_PASSWORD = "^[a-zA-Z0-9]{6,16}$";

/**
* 正则表达式:验证手机号
*/
// public static final String REGEX_MOBILE = "^((13[0-9])|(15[^4,\\D])|(18[0,5-9]))\\d{8}$";
  public static final String REGEX_MOBILE = "^((13[0-9])|(15[^4,\\D])|(17[0-9])|(18[0-9]))\\d{8}$";

/**
* 正则表达式:验证邮箱
*/
  public static final String REGEX_EMAIL = "^([a-z0-9A-Z]+[-|\\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-zA-Z]{2,}$";

/**
* 校验用户名
*
* @param username
* @return 校验通过返回true,否则返回false
*/
  public static boolean isUsername(String username) {
    return Pattern.matches(REGEX_USERNAME, username);
    }

/**
* 校验密码
*
* @param password
* @return 校验通过返回true,否则返回false
*/
  public static boolean isPassword(String password) {
    return Pattern.matches(REGEX_PASSWORD, password);
    }

/**
* 校验手机号
*
* @param mobile
* @return 校验通过返回true,否则返回false
*/
  public static boolean isMobile(String mobile) {
    return Pattern.matches(REGEX_MOBILE, mobile);
    }

/**
* 校验邮箱
*
* @param email
* @return 校验通过返回true,否则返回false
*/
  public static boolean isEmail(String email) {
    return Pattern.matches(REGEX_EMAIL, email);
    }   public static void main(String[] args) {
  String username = "fdsdfsdj";
  System.out.println(Validator.isUsername(username));     } }

  

java.util.regex.Pattern正则表达式写验证器示例的更多相关文章

  1. java.util.regex.Pattern的应用

    java.util.regex.Pattern 正则表达式的一种已编译的实现. 正则表达式通常以字符串的形式出现,它首先必须被编译为Pattern类的一个实例.结果模型可以用来生成一个Matcher, ...

  2. 由Java正则表达式的灾难性回溯引发的高CPU异常:java.util.regex.Pattern$Loop.match

    问题与分析 某天领导report了一个问题:线上的CPU自从上一个版本迭代后就一直处于居高不下的状况,领导看着这段时间的曲线图判断是有两条线程在不停的死循环. 接到任务后去查看了AWS的CloudWa ...

  3. 【java】java.util.regex.Pattern和java.util.regex.Matcher简单示例

    package 正则; import java.util.regex.Matcher; import java.util.regex.Pattern; public class Test_regex ...

  4. Java-API:java.util.regex.Pattern

    ylbtech-Java-API:java.util.regex.Pattern 1.返回顶部   2.返回顶部   3.返回顶部   4.返回顶部   5.返回顶部 1. https://docs. ...

  5. Java正则表达式java.util.regex类的简单使用

    1.什么是正则表达式? 正则表达式(regular expression)是根据字符串集合内每个字符串共享的共同特性来描述字符串集合的一种途径.正则表达式可以用于搜索.编辑或者处理文本和数据. Jav ...

  6. 字符串replaceAll()方法报错:java.util.regex.PatternSyntaxException:Unclosed group near index...

    Unclosed group near index错误 之前自己写的一个模块在项目上线后最近频频出现tomcat崩掉的情况,从log看出现如下的报错信息: java.util.regex.Patter ...

  7. 我的Android进阶之旅------>解决错误: java.util.regex.PatternSyntaxException: Incorrect Unicode property

    1.错误描述 今天使用正则表达式验证密码的时候,报了错误 java.util.regex.PatternSyntaxException: Incorrect Unicode property near ...

  8. java.util.regex.PatternSyntaxException: Dangling meta character '*' near index 0 *&* 解决方法

    java.util.regex.PatternSyntaxException: Dangling meta character '*' near index 0*&*^    at java. ...

  9. java.util.regex包下的Pattern类和Matcher类的使用总结

    一.介绍 Java正则表达式通过java.util.regex包下的Pattern类与Matcher类实现1.Pattern类用于创建一个正则表达式,也可以说创建一个匹配模式,它的构造方法是私有的,不 ...

随机推荐

  1. Linux管理命令

    管理命令 用户管理: useradd, userdel, usermod, passwd, chsh, chfn, finger, id, chage 组管理: groupadd, groupdel, ...

  2. 批量改ID 行形式

    update [Temp_Sql] set ID(字段) = (274+ID(字段))  字段+字段形式 可以以行形式批量修改

  3. 高精度的N进制转换模板(转K神)

    /* 高精度进制转换 把oldBase 进制的数转化为newBase 进制的数输出. 调用方法,输入str, oldBase newBase. change(); solve(); output(); ...

  4. D3.js v4版本 按住shift键框选节点demo

    http://download.csdn.net/download/qq_25042329/10139649

  5. 1149 Dangerous Goods Packaging (25 分)

    When shipping goods with containers, we have to be careful not to pack some incompatible goods into ...

  6. 微信小程序 修改(自定义) 单选/复选按钮样式 checkbox/radio样式自定义

    参考文章: 微信小程序 修改(自定义) 单选/复选按钮样式 checkbox/radio样式自定义

  7. Q443 压缩字符串

    给定一组字符,使用原地算法将其压缩. 压缩后的长度必须始终小于或等于原数组长度. 数组的每个元素应该是长度为1 的字符(不是 int 整数类型). 在完成原地修改输入数组后,返回数组的新长度. 进阶: ...

  8. java.lang.ref.Reference<T>

    //看之前先要知道java里面的四种引用.package com.zby.ref; import sun.misc.Cleaner; /** * 引用对象的抽象基础类.这个类定义了所有引用对象的公共操 ...

  9. 解决Resharper在Core项目中无法执行单元测试的问题

    项目升级core了,resharper最近升级到2018.1版本,但是安装后还是无法直接运行单元测试,昨天小姐姐发了解决方法,贼有用.所以记录一下,给自己以后或者其他遇到此问题的小伙伴用.  解决Re ...

  10. RESTful 设计工具和Web框架

    搭建开发环境几乎都搭建失败,因为需要FQ Spring Boot 和 Spring MVC 单独 Jersey官网可以直接访问 https://jersey.java.net/documentatio ...