gpt4 book ai didi

最新密码验证正则表达式

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 26 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章最新密码验证正则表达式由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

正则表达式验证密码功能在项目中经常被使用到,但是很多朋友还是不大会使用密码正则表达式进行验证,本文小编为大家整理了php密码验证正则表达式、python密码强度正则,当然还有大家常用到的js正则表达式,希望大家喜欢.

刚开始复习一下,什么是正则表达式? 在编写处理字符串的程序或网页时,经常有查找符合某些复杂规则的字符串的需要。正则表达式就是用于描述这些规则的工具。换句话说,正则表达式就是记录文本规则的代码.

php密码验证正则表达式(8位长度限制) 。

?
1
2
3
4
5
6
7
<?php
//密码验证
$password = "zongzi_Abc_oo13a2" ;
$n = preg_match_all( "/^[a-zA-Z\d_]{8,}$/" , $password , $array );
//长度是8或更多
var_dump( $array );
?>

python密码验证正则表达式 。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#encoding=utf-8
import re
def checklen(pwd):
  return len (pwd)> = 8
def checkContainUpper(pwd):
  pattern = re. compile ( '[A-Z]+' )
  match = pattern.findall(pwd)
  if match:
  return True
  else :
  return False
def checkContainNum(pwd):
  pattern = re. compile ( '[0-9]+' )
  match = pattern.findall(pwd)
  if match:
  return True
  else :
  return False
def checkContainLower(pwd):
  pattern = re. compile ( '[a-z]+' )
  match = pattern.findall(pwd)
  if match:
  return True
  else :
  return False
def checkSymbol(pwd):
  pattern = re. compile ( '([^a-z0-9A-Z])+' )
  match = pattern.findall(pwd)
  if match:
  return True
  else :
  return False
def checkPassword(pwd):
  #判断密码长度是否合法
  lenOK = checklen(pwd)
  #判断是否包含大写字母
  upperOK = checkContainUpper(pwd)
  #判断是否包含小写字母
  lowerOK = checkContainLower(pwd)
  #判断是否包含数字
  numOK = checkContainNum(pwd)
  #判断是否包含符号
  symbolOK = checkSymbol(pwd)
  print (lenOK)
  print (upperOK)
  print (lowerOK)
  print (numOK)
  print (symbolOK)
  return (lenOK and upperOK and lowerOK and numOK and symbolOK)
 
def main():
  if checkPassword( 'Helloworld#123' ):
  print ( '检测通过' )
  else :
  print ( '检测未通过' )
 
if __name__ = = '__main__' :
  main()

java密码验证正则表达式 。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/**
* @ClassName: RexTest
* @Description: TODO
* @author BMR
* @date 2016年3月28日 上午11:09:17
*/
public class RexTest {
 
  /**
  * 正则表达式验证密码
  * @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`~!@#$%^&*(\\)+=|{}" ));
  }

输出结果:

rexCheckPassword is: true 。

网友提出的问题:

正则表达式校验密码 1、密码必须由数字、字符、特殊字符三种中的两种组成; 2、密码长度不能少于8个字符; 满足以上两点,应该怎么实现?

(?!^\\d+$)不能全是数字 (?!^[a-zA-Z]+$)不能全是字母 (?!^[_#@]+$)不能全是符号(这里只列出了部分符号,可自己增加,有的符号可能需要转义) .{8,}长度不能少于8位 合起来就是 (?!^\\d+$)(?!^[a-zA-Z]+$)(?!^[_#@]+$).{8,} 。

完整的js正则表达式:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
//强:字母+数字+特殊字符&nbsp;
&nbsp;^(?![a-zA-z]+$)(?!\d+$)(?![!@ #$%^&*]+$)(?![a-zA-z\d]+$)(?![a-zA-z!@#$%^&*]+$)(?![\d!@#$%^&*]+$)[a-zA-Z\d!@#$%^&*]+$
&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;
//中:字母+数字,字母+特殊字符,数字+特殊字符
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^(?![a-zA-z]+$)(?!\d+$)(?![!@ #$%^&*]+$)[a-zA-Z\d!@#$%^&*]+$
 
//弱:纯数字,纯字母,纯特殊字符
^(?:\d+|[a-zA-Z]+|[!@ #$%^&*]+)$
 
 
//校验是否全由数字组成
 
function isDigit(s)
{
var patrn=/^[0-9]{1,20}$/;
if (!patrn.exec(s)) return false
return true
}
 
//校验登录名:只能输入5-20个以字母开头、可带数字、“_”、“.”的字串
function isRegisterUserName(s)
{
var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,19}$/;
if (!patrn.exec(s)) return false
return true
}
 
function isRegisterUserName(s)
{
var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,19}$/;
if (!patrn.exec(s)) return false
return true
}
 
 
//校验用户姓名:只能输入1-30个以字母开头的字串
Javascript代码
function isTrueName(s)
{
var patrn=/^[a-zA-Z]{1,30}$/;
if (!patrn.exec(s)) return false
return true
}
}}
 
//校验密码:只能输入6-20个字母、数字、下划线
function isPasswd(s)
{
var patrn=/^(\w){6,20}$/;
if (!patrn.exec(s)) return false
return true
}
 
//校验普通电话、传真号码:可以“+”开头,除数字外,可含有“-”
function isTel(s)
{
//var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?(\d){1,12})+$/;
var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/;
if (!patrn.exec(s)) return false
return true
}
 
//校验手机号码:必须以数字开头,除数字外,可含有“-”
function isMobil(s)
{
var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/;
if (!patrn.exec(s)) return false
return true
}
 
//校验邮政编码
function isPostalCode(s)
{
//var patrn=/^[a-zA-Z0-9]{3,12}$/;
var patrn=/^[a-zA-Z0-9 ]{3,12}$/;
if (!patrn.exec(s)) return false
return true
}
 
//校验搜索关键字
function isSearch(s)
{
var patrn=/^[^`~!@ #$%^&*()+=|\\\][\]\{\}:;'\,.<>/?]{1}[^`~!@$%^&()+=|\\\]
  [\]\{\}:;'\,.<>?]{0,19}$/;
if (!patrn.exec(s)) return false
return true
}
 
function isIP(s) //by zergling
{
var patrn=/^[0-9.]{1,20}$/;
if (!patrn.exec(s)) return false
return true
}

正则表达式 。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
^\\d+$   //非负整数(正整数 + 0)
^[0-9]*[1-9][0-9]*$   //正整数
^((-\\d+)|(0+))$   //非正整数(负整数 + 0)
^-[0-9]*[1-9][0-9]*$   //负整数
^-?\\d+$     //整数
^\\d+(   //非负浮点数(正浮点数 + 0)
^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$ 
//正浮点数
^((-\\d+(   //非正浮点数(负浮点数 + 0)
^(-(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*)))$
//负浮点数
^(-?\\d+)(   //浮点数
^[A-Za-z]+$   //由26个英文字母组成的字符串
^[A-Z]+$   //由26个英文字母的大写组成的字符串
^[a-z]+$   //由26个英文字母的小写组成的字符串
^[A-Za-z0-9]+$   //由数字和26个英文字母组成的字符串
^\\w+$   //由数字、26个英文字母或者下划线组成的字符串
^[\\w-]+(     //email地址
^[a-zA-z]+: //(  //url
^[A-Za-z0-9_]*$

匹配完整域名的正则表达式: [a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+\.?

系列文章1:最新手机号码、电话号码正则表达式 。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我.

最后此篇关于最新密码验证正则表达式的文章就讲到这里了,如果你想了解更多关于最新密码验证正则表达式的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com