密码校验需求:

1) 密码控制只能输入字母、数字、特殊符号(~!@#$%^&*()_+[]{}|\;:'",./<>?)
2) 长度 6-16 位,必须包括字母、数字、特殊符号中的2种
3) 密码不能包含用户名信息

判断密码是否包含数字:包含返回1,不包含返回0
int i = newPwd.matches(".*\\d+.*") ? 1 : 0;

判断密码是否包含字母:包含返回1,不包含返回0
int j = newPwd.matches(".*[a-zA-Z]+.*") ? 1 : 0;

判断密码是否包含特殊符号(~!@#$%^&*()_+|<>,.?/:;'[]{}\):包含返回1,不包含返回0
int k = newPwd.matches(".*[~!@#$%^&*()_+|<>,.?/:;'\\[\\]{}\"]+.*") ? 1 : 0;

判断密码长度是否在6-16位
int l = newPwd.length();

判断密码中是否包含用户名
boolean contains = newPwd.contains(userId);

if (i + j + k < 2 || l < 6 || l > 16 || contains) {
  return Password error;
}

密码校验正则表达式(java 环境)的更多相关文章

  1. java密码验证正则表达式校验

    ,正则表达式就是记录文本规则的代码.php密码验证正则表达式(8位长度限制)<?php //密码验证 $password = "zongzi_Abc_oo13a2"; $n ...

  2. MySQL_(Java)使用JDBC创建用户名和密码校验查询方法

    MySQL_(Java)使用JDBC向数据库发起查询请求 传送门 MySQL数据库中的数据,数据库名garysql,表名garytb,数据库中存在的用户表 通过JDBC对MySQL中的数据用户名和密码 ...

  3. [原创]多版本Java环境变量的配置

    起因:   偶然突发兴致, 收拾下自己的老T500电脑, 用来做个家庭开发用机. 应为每次装系统都有GHOST备份的习惯, 所以需要提前搭建好开发环境. 而且新装系统的目的之一, 也是想研究下Andr ...

  4. 搭建Java环境JDK,和运行环境JRE

    1:想要学习Java第一步就是搭建Java环境,就是安装JDK,又因为JDK里面包含JRE,所以在安装JDK的过程中就安装了JRE,所以以下只是给出了JDK的安装包,自行下载安装即可 链接:http: ...

  5. 搭建Nginx+JAVA环境

    搭建Nginx+JAVA环境 Apache对Java的支持很灵活,他们的结合度也很高,例如Apache+Tomcat和Apache+resin等都可以实现对Java应用的支持.Apache一般采用一个 ...

  6. Linux上部署Tomcat(包括JAVA环境的配置)

    一. 用FTP工具,把apache-tomcat-7.0.64.tar.gz,jdk-7u79-linux-x64.tar.gz 上传到目录/home/zwl/Tomcat/命令下 因为Tomcat运 ...

  7. SSD Cloud Hosting - Linode的配置和部署,搭建Java环境

    0.发牢骚 前一个月在淘宝购买了个Jsp空间,挺便宜的,才38元/年.部署了程序,然后ALIMAMA验证网站,一直提示验证失败.最后找卖家,他说可能是因为空间太慢,照他的推荐换了最好的空间,138元/ ...

  8. VirtualBox 中的UBUNTU和java环境的配置以及各种常用说明

    本来是要ubuntu下学习C++的,但是又懒的用高手们推荐的各种记事本级的操作,所以要用IDE.(我用IDE我自豪,人类的进化就是建立在工具的使用这个基础之上的.)我选用了oracle的netbean ...

  9. Windows平台配置Appium+Java环境

    1) 安装JDK 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 安装 ...

随机推荐

  1. ASP.NET中的随机密码生成

    第一种方法:用.NET中的 Sytem.Guid.NewGuid().ToString() 生成,实际上是对一个128bit数字的十六进制输出.生成的字符由0-9和a-z这几种字符组成,也可能会有“- ...

  2. xamarin.ios 实现圆形进度条

    using System; using UIKit; using System.Drawing; using CoreAnimation; namespace PMM { public class P ...

  3. jquery层级原则器(匹配前一个元素后的所有平辈元素)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. Debian7编译VIM7.4

    [ 另: vim7.4源码在vs2013的编译方法 ] 1 安装libncurses5库: apt-get install libncurses5-dev 2 安装gvim需要的库: 方法一: apt ...

  5. 【Java每日一题】20161110

    package Nov2016; import java.util.HashSet; public class Ques1110 { public static void main(String[] ...

  6. 算法:欧几里得求最大公约数(python版)

    #欧几里得求最大公约数 #!/usr/bin/env python #coding -*- utf:8 -*- #iteration def gcd(a,b): if b==0: return a e ...

  7. Java集合类中的哈希总结

    JAVA集合类中的哈希总结 目 录 1.哈希表 2.Hashtable.HashMap.ConcurrentHashMap.LinkedHashMap.TreeMap区别 3.Hashtable.Ha ...

  8. [翻译]Autofac 解析服务

    注册组件以后,通过容器或 ILifetimeScope 的 Resolve 方法解析服务: var builder = new ContainerBuilder(); builder.Register ...

  9. 七个结构模式之组合模式(Composite Pattern)

    定义: 组合多个对象形成树形结构来表示"整体-部分"关系的层次结构,其中的叶子对象和容器对象具有相同的接口,可以使用抽象类来进行管理. 结构图: Component:抽象构件类,对 ...

  10. nginx 在ubuntu 上的启动,停止,重启

    vi 显示行号 :set num 在开始玩nginx之前,得先安装nginx,可以参考 <ubuntu15.10_x64 安装 nginx>   启动 sudo /usr/local/ng ...