Android之利用正则表达式校验邮箱、手机号、密码、身份证号码等

概述
现在Android应用在注册的时候基本会校验邮箱、手机号、密码、身份证号码其中一项或多项,特此收集了相关的正则表达式给大家分享。除了正则表达式,文章末尾提供Demo中有惊喜哦!

具体验证的图片效果就不做展示了,有需要可以下载Demo演示。下面就贴出校检类。

/** * 校验器:利用正则表达式校验邮箱、手机号等 * @author Mr.duan */public class Validator {    /**     * 正则表达式:验证用户名(不包含中文和特殊字符)如果用户名使用手机号码或邮箱 则结合手机号验证和邮箱验证     */    public static final String REGEX_USERNAME = "^[a-zA-Z]\\w{5,17}$";    /**     * 正则表达式:验证密码(不包含特殊字符)     */    public static final String REGEX_PASSWORD = "^[a-zA-Z0-9]{6,16}$";    /**     * 正则表达式:验证手机号     */    public static final String REGEX_MOBILE = "^(0|86|17951)?(13[0-9]|15[012356789]|17[678]|18[0-9]|14[57])[0-9]{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,}$";    /**     * 正则表达式:验证汉字(1-9个汉字)  {1,9} 自定义区间     */    public static final String REGEX_CHINESE = "^[\u4e00-\u9fa5]{1,9}$";    /**     * 正则表达式:验证身份证     */    public static final String REGEX_ID_CARD = "(^\\d{15}$)|(^\\d{17}([0-9]|X)$)";    /**     * 正则表达式:验证URL     */    public static final String REGEX_URL = "http(s)?://([\\w-]+\\.)+[\\w-]+(/[\\w- ./?%&=]*)?";    /**     * 正则表达式:验证IP地址      */    public static final String REGEX_IP_ADDR = "(2[5][0-5]|2[0-4]\\d|1\\d{2}|\\d{1,2})\\.(25[0-5]|2[0-4]\\d|1\\d{2}|\\d{1,2})\\.(25[0-5]|2[0-4]\\d|1\\d{2}|\\d{1,2})\\.(25[0-5]|2[0-4]\\d|1\\d{2}|\\d{1,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);    }    /**     * 校验汉字     * @param chinese     * @return 校验通过返回true,否则返回false     */    public static boolean isChinese(String chinese) {        return Pattern.matches(REGEX_CHINESE, chinese);    }    /**     * 校验身份证     * @param idCard     * @return 校验通过返回true,否则返回false     */    public static boolean isIDCard(String idCard) {        return Pattern.matches(REGEX_ID_CARD, idCard);    }    /**     * 校验URL     * @param url     * @return 校验通过返回true,否则返回false     */    public static boolean isUrl(String url) {        return Pattern.matches(REGEX_URL, url);    }    /**     * 校验IP地址     * @param ipAddress     * @return     */    public static boolean isIPAddress(String ipAddress) {        return Pattern.matches(REGEX_IP_ADDR, ipAddress);    }}

后记
感谢玩Android 3群的小伙伴的建议,Demo为最初始版本(上传后的资源不能再操作),Validator 类代码请以博文贴出的代码为准,会对常用的验证做出更新,有新的建议可以给我留言哦~

上源码

更多相关文章

  1. Android(安卓)APN设置及获得手机号
  2. 在一串字符中查找到手机号码,并打印出来
  3. 新浪分享 Insufficient app permissions!
  4. 格式化字符串长度,超出部分显示省略号,区分汉字跟字母
  5. native的Socket向Android的LocalSocketServer发送汉字乱码的问题
  6. Android短信验证码(用的Mob短信验证)
  7. android之银行卡手机号码自动补齐空格
  8. weex和Android的交互
  9. Android(安卓)Layout Binder(在线将XML中View find出来,生成java代

随机推荐

  1. 2013.04.16——— android 获取状态栏高
  2. android 第一次运行应用的引导界面
  3. Eclipse 中的Android 工程突然无法启动调
  4. Android基础--电话拨号器
  5. Ubuntu 12.04 安装 Tomcat8 遇到的问题
  6. Android第二十九期 - 各种Android的App框
  7. gdbserver/remote debug on android
  8. android 一行代码,快速实现图片验证码(附an
  9. android中Dialog居中显示
  10. android onSaveInstanceState的使用方法