zoukankan      html  css  js  c++  java
  • 用户名和密码的正则表达式验证

    简单的正则表达式例子:

    /** 
    * @ClassName: RexTest 
    * @Description: TODO
    * @author BMR
    * @date 2016年3月28日 上午11:09:17 
    */
    public class RexTest {
        /**
         * 正则表达式验证昵称
         * @param nickName
         * @return
         */
        public static boolean rexCheckNickName(String nickName) {
            // 昵称格式:限16个字符,支持中英文、数字、减号或下划线
            String regStr = "^[\u4e00-\u9fa5_a-zA-Z0-9-]{1,16}$";
            return nickName.matches(regStr);
        }
    
        /**
         * 正则表达式验证密码
         * @param input
         * @return
         */
        public static boolean rexCheckPassword(String input) {
            // 6-20 位,字母、数字、字符
            //String reg = "^([A-Z]|[a-z]|[0-9]|[`-=[];,./~!@#$%^*()_+}{:?]){6,20}$";
            String regStr = "^([A-Z]|[a-z]|[0-9]|[`~!@#$%^&*()+=|{}':;',\\[\\].<>/?~!@#¥%……&*()——+|{}【】‘;:”“’。,、?]){6,20}$";
            return input.matches(regStr);
        }
        
        public static void main(String[] args){
            System.out.println("rexCheckPassword is: "+ rexCheckPassword("14`~!@#$%^&*(\)+=|{}"));
            System.out.println("rexCheckNickName is: "+ rexCheckNickName("中英文-数字_减号或下划线"));
            System.out.println("rexCheckNickName is: "+ rexCheckNickName("12文、数字、@"));
        }

    输出结果:

    rexCheckPassword is: true
    rexCheckNickName is: true
    rexCheckNickName is: false

    到底什么是正则表达式?
    在编写处理字符串的程序或网页时,经常有查找符合某些复杂规则的字符串的需要。正则表达式就是用于描述这些规则的工具。换句话说,正则表达式就是记录文本规则的代码。
    常用元字符
    代码说明
    . 匹配除换行符以外的任意字符
    w 匹配字母或数字或下划线
    s 匹配任意的空白符
    d 匹配数字
     匹配单词的开始或结束
    ^ 匹配字符串的开始
    $ 匹配字符串的结束
    常用限定符
    代码/语法说明
    * 重复零次或更多次
    + 重复一次或更多次
    ? 重复零次或一次
    {n} 重复n次
    {n,} 重复n次或更多次
    {n,m} 重复n到m次
    常用反义词
    代码/语法说明
    W 匹配任意不是字母,数字,下划线,汉字的字符
    S 匹配任意不是空白符的字符
    D 匹配任意非数字的字符
    B 匹配不是单词开头或结束的位置
    [^x] 匹配除了x以外的任意字符
    [^aeiou] 匹配除了aeiou这几个字母以外的任意字符
  • 相关阅读:
    [转]jQuery 1.4的十五大新功能实例精讲
    数据库优化使用索引优化存储过程
    SQL语句练习实例之一——找出最近的两次晋升日期与工资额
    Sql Server中三种字符串合并方法的性能比较
    在IIS7下配置ASP.NET v1.1(Visual Studio .NET 2003)环境
    数据库优化方法 (一)
    WEB版一次选择多个文件进行批量上传(swfupload)的解决方案
    [转]根据性能监视器,分析性能瓶颈
    数据库优化方法(三)
    英文SilverLight 4 tools for vs 2010 安装于vs 2010中文版,无法拖拽数据源问题解决方法
  • 原文地址:https://www.cnblogs.com/permanent2012moira/p/5328308.html
Copyright © 2011-2022 走看看