正则表达式匹配密码

一:
1.密码必须是6~18位之间的数字,正则表达式为"1{6,18} " 2. 必须包含字母和数字的,正则表达式为: " ( ? ! [ 0 − 9 ] + " 2.必须包含字母和数字的,正则表达式为:"^(?![0-9]+ "2.必须包含字母和数字的,正则表达式为:"(?![09]+)(?![a-zA-Z]+ ) [ 0 − 9 A − Z a − z ] 6 , 16 )[0-9A-Za-z]{6,16} )[09AZaz]6,16"
3.密码中可以有(可有可没有)特殊字符的组合,正则表达式为"^(?![0-9]+ ) ( ? ! [ a − z A − Z ] + )(?![a-zA-Z]+ )(?![azAZ]+)[0-9A-Za-z\W]{6,18}$"
4.空格符可以识别,如果有空格例: 1223334 2323222 那么会分两部分进行识别,而不是识别成一个整体

(?![0-9]+\s|KaTeX parse error: Undefined control sequence: \s at position 14: )(?![a-zA-Z]+\̲s̲|)(?<=\s|^)[\S]{6,18}(?=\s|$)

(?:^|\s)(?![0-9]+\s|KaTeX parse error: Undefined control sequence: \s at position 14: )(?![a-zA-Z]+\̲s̲|)[\S]{6,18}(?=\s|$)

(1)密码必须是6~18位之间
(2)至少一个字母,一个数字密码和一个特殊字符
(3)空格符可以识别,如果有空格例: 1A223334@ 2323222 那么会分两部分进行识别,而不是识别成一个整体

(?:^|\s)(?![0-9\W]+\s|KaTeX parse error: Undefined control sequence: \W at position 12: )(?![a-zA-Z\̲W̲]+\s|)(?![0-9a-zA-Z]+\s|KaTeX parse error: Undefined control sequence: \s at position 15: )[\S]{6,18}(?=\̲s̲|)

(?:\D|^)\d{8}(?=\D|$)

(?<=\D|^)\d{8}(?=\D|$)

(?:\s|^)(25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|[1-9])(?=\s|$)

我们目前的正则表达式的库还不能支持正向预查(?<=)和多行模式。
?<= 用?:代替
多行模式的^和KaTeX parse error: Undefined control sequence: \s at position 5: 用(?:\̲s̲|^)和(?=\s|)来代替

二:
test文本:
/begin CHARACTERISTIC
/aaabbb
qqbbcsc
/end CHARACTERISTIC

正则要求:
#首行/begin CHARACTERISTIC+换行符
#中间有什么内容不关心
#尾行/end CHARACTERISTIC+换行符

正则表达式:
(/begin CHARACTERISTIC)[\r\n]+[\s\S]?(/end CHARACTERISTIC)[\r\n]+
(/begin CHARACTERISTIC)[\x0c\cL\x0a\cJ]+[\s\S]
?(/end CHARACTERISTIC)[\x0c\cL\x0a\cJ]+

三:
想这个正则匹配(?:13[0-9]|14[0,5,7]|133|199)开头的,不匹配后8位中有8位到4位重复的这种数据
(?:13[0-9]|14[0,5,7]|133|199)(?!.*(\d)\1{3,7})\d{8}

筛选开头: (?:13[0-9]|14[0,5,7]|133|199)
筛选连续重复位数4-8位: (\d)\1{3,7}
筛选连续不重复位数4-8位: (?!(\d)\1{3,7})
筛选任意位置不重复位数: (?!.*(\d)\1{3,7})
筛选第0位-第4位开始的不重复位数: (?!\d{0,4}(\d)\1{3,7})\d{8}

https://blog.51cto.com/u_15995687/6275194


  1. 0-9 ↩︎

  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值