• 用户名和密码的正则表达式验证


    简单的正则表达式例子:

    /** 
    * @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这几个字母以外的任意字符
  • 相关阅读:
    简单对称加密
    temp
    标点符号
    PHP定时执行计划任务
    从杨致远辞去雅虎说起,那些衰落的网站巨头给我们的启示
    JS判断手机浏览器
    如何制作在线参考手册
    不是每个程序员都是适合创业,即使你工作了十年
    两级导航栏联动效果
    关于腾讯ip接口一个流传很广的错误用法
  • 原文地址:https://www.cnblogs.com/permanent2012moira/p/5328308.html
Copyright © 2020-2023  润新知