代码示例

import java.util.regex.Pattern;

/**

* @program: simple_tools

* @description: 密码检测工具类

* @author: Mr.chen

* @create: 2020-05-18 11:26

**/

public class PasswordUtils {

/**

* 判断是否为纯数字简单密码

* @param pwd

* @return 如 111111 123456 654321返回true

*/

public static boolean isSimplePwd(String pwd) {

if (null == pwd || "".equals(pwd.trim())) {

return false;

}

if (!Pattern.compile("[0-9]*").matcher(pwd).matches()) {

return false;

}

boolean flag1 = true;

boolean flag2 = true;

boolean flag3 = true;

char[] chars = pwd.toCharArray();

int iterations = chars.length - 1;

for (int i = 0; i < iterations; i++) {

int num1 = Integer.parseInt(chars[i] + "");

int num2 = Integer.parseInt(chars[i + 1] + "");

if (num1 != num2 - 1) {

flag1 = false;

}

if (num1 != num2 + 1) {

flag2 = false;

}

if (num1 != num2) {

flag3 = false;

}

if (!(flag1 || flag2 || flag3)) {

break;

}

}

return (flag1 || flag2 || flag3);

}

/**

* 检查密码合格性

* @param pwd

* @return 密码长度需8-32位且至少含数字、字母、字符中的两种 true

*/

public static boolean pwdIsOk(String pwd) {

if (null == pwd || "".equals(pwd.trim())) {

return false;

}

String pattern = "^(?![a-zA-Z]+$)(?![A-Z0-9]+$)(?![A-Z\\W_!@#$%^&*`~()-+=]+$)(?![a-z0-9]+$)(?![a-z\\W_!@#$%^&*`~()-+=]+$)(?![0-9\\W_!@#$%^&*`~()-+=]+$)[a-zA-Z0-9\\W_!@#$%^&*`~()-+=]{8,32}$";

return Pattern.compile(pattern).matcher(pwd).matches();

}

public static String checkPassword(String pwd) {

String regexZ = "\\d*";

String regexS = "[a-zA-Z]+";

String regexT = "\\W+$";

String regexZT = "\\D*";

String regexST = "[\\d\\W]*";

String regexZS = "\\w*";

String regexZST = "[\\w\\W]*";

if (pwd.matches(regexZ)) {

return "弱";

}

if (pwd.matches(regexS)) {

return "弱";

}

if (pwd.matches(regexT)) {

return "弱";

}

if (pwd.matches(regexZT)) {

return "中";

}

if (pwd.matches(regexST)) {

return "中";

}

if (pwd.matches(regexZS)) {

return "中";

}

if (pwd.matches(regexZST)) {

return "强";

}

return pwd;

}

public static void main(String[] args) {

System.out.println(pwdIsOk("??..........13a"));

}

}

本文同步分享在 博客“cwl_java”(CSDN)。

如有侵权,请联系 support@oschina.cn 删除。

本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

java 密码检测_Java工具集-密码检测工具相关推荐

  1. java密码强度_java实现的密码强度检测功能完整示例

    本文实例讲述了java实现的密码强度检测功能.分享给大家供大家参考,具体如下: CheckStrength.java文件: package com.wx.pwd; /** * 检测密码强度 * * @ ...

  2. java修改密码代码_Java用户修改密码

    每一个应用系统都离不开用户模块.用户模块除了提供登录之外,还允许用户查看自己的信息和进行修改.本实例将创建一个用户类,然后再创建一个测试类调用用户类,实现修改密码的功能. 本实例的用户类非常简单,仅包 ...

  3. Java工具集-MD5加密工具

    简单工具类 写作初衷:由于日常开发经常需要用到很多工具类,经常根据需求自己写也比较麻烦 网上好了一些工具类例如commom.lang3或者hutool或者Jodd这样的开源工具,但是 发现他们之中虽然 ...

  4. SU插件情报局 | Fredo工具集:纹理工具(附插件安装包)

    作者:活力网 Andrew 同学们大扎好! 没错 活力网 SU插件情报局 又来了! 这一期的主角是Fredo6 Fredo Tools(简称:FT) ThruPaint(纹理工具)(简称:TP) 没接 ...

  5. java如何给密码加密_Java如何实现密码加密

    在查询时,我们如果要对用户的登录信息进行加密,通常会将其密码进行加密. 1) 可以借助spring框架工具类DigestUtils 2) 也可以使用shiro框架来实现 //保存用户自身信息 //1构 ...

  6. java如何加密_Java如何实现密码加密

    在查询时,我们如果要对用户的登录信息进行加密,通常会将其密码进行加密. 1) 可以借助spring框架工具类DigestUtils 2) 也可以使用shiro框架来实现 //保存用户自身信息 //1构 ...

  7. java 环境变量检测_java环境变量设置检测

    java环境变量设置检测 Java环境变量已经配置完了,不知道行不行,那么java环境变量设置检测呢?一起来看看吧! java环境变量设置检测 方法/步骤 首先,在桌面右击,选择"文本文档& ...

  8. java 人脸检测_Java+OpenCV实现人脸检测并自动拍照

    java+opencv实现人脸检测,调用笔记本摄像头实时抓拍,人脸会用红色边框标识出来,并且将抓拍的目录存放在src下,图片名称是时间戳. 环境配置:win7 64位,jdk1.8 CameraBas ...

  9. java 获取温度_Java利用RXTX串口通信工具类获取DS18B20温度传感器的温度值

    环境:Windows10,Eclipse4.5.2,JDK1.7 设备:DS18B20温度传感器(4线,485接口),USB转485接口转换器,笔记本电脑 注意点:RTU传输,使用的是字节,那么在程序 ...

最新文章

  1. 【Hibernate框架开发之五】Hibernate对象的三种状态Session常用方法
  2. CodeForces - 1332B Composite Coloring(数论+构造)
  3. CCF201312-5 I’m stuck
  4. 结构型模式概述(Structural Pattern)
  5. 深度学习2.0-34.ResNet 与 DenseNet
  6. 如何开发神经网络来预测汽车保险支出
  7. Linux内核入门(六)—— __attribute_ 机制
  8. 日常记账后,图表查看账目类别
  9. 批量删除微博(不能翻页)
  10. 棋牌麻将 - 常用胡牌规则解释及汇总
  11. 报错:tensorflow.python.framework.errors_impl.UnimplementedError: Cast string to float is not supported
  12. linux if 判断
  13. SQLServer_ER关系模型图
  14. SpringBoot+Beetlsql代码生成
  15. H5,200行代码实现粒子漩涡特效
  16. 《信息化项目文档模板四——系统建设方案模板》
  17. java工程师面试经验分享1-面试准备
  18. Web服务器python编程
  19. ajax,HTTP原理 : 网络传输协议,网页从输入url到渲染的流程,函数防抖和节流
  20. 基于Java开发一套完整的区块链系统(附源码)

热门文章

  1. 从黄生和辕固生的辩论说起
  2. iOS小技巧12-苹果地图和高德地图的关系
  3. SIM基本常识(PIN,PUK,IMEI,ICCID,Ki,IMSI,SMSP)
  4. this和super不能同时出现在一个构造函数中
  5. 浙江绍兴旅游:“兰亭集序”残缺的美
  6. 第十二届国际汉字书法教育研讨会(邓老师部分)笔记
  7. win10 无法使用ping ipconfig命令
  8. ip linux 用户名和密码,常用路由器的默认登录IP、用户名及密码
  9. 全景丨0基础学习VR全景制作,平台篇第15章:热点功能-音图文
  10. 头歌-信息安全技术-安全审计