主页 > 知识库 > 正则表达式实现与或非关系【推荐】

正则表达式实现与或非关系【推荐】

热门标签:地图标注教学点 贵港公司如何申请400电话 西藏智能外呼系统代理商 梅县地图标注 呼叫系统外呼只能两次 400电话办理电话办理 甘肃医疗外呼系统排名 ai电话机器人搭建 外呼系统无呼出路由是什么原因

写一个正则表达式,要求匹配字符串同时满足条件A和条件B

我们可以先写两个子表达式PatternA和PatternB,分别校验条件A和条件B。然后结合成一个新的表达式

(?=PatternA)PatternB

例如,当在Windows Server上修改用户密码时,一般要求满足以下要求:

1. 6到256个字符
2. 包括以下四类字符中的至少三类: 数字/小写字母/大写字母/其他字符
3. 其它无法用正则表达式校验的规则(例如最短密码修改时间)

我们就可以用以下正则表达式来校验密码的合法性(其中蓝色和绿色部分分别为PatternA和PatternB):

(?=^.{6,255}$)((?=.*\d)(?=.*[A-Z])(?=.*[a-z])|(?=.*\d)(?=.*[^A-Za-z0-9])(?=.*[a-z])|(?=.*[^A-Za-z0-9])(?=.*[A-Z])(?=.*[a-z])|(?=.*\d)(?=.*[A-Z])(?=.*[^A-Za-z0-9]))^.*

•写一个正则表达式,要求匹配字符串满足条件A,但不可满足条件B

我们可以先写两个子表达式PatternA和PatternB,分别校验条件A和条件B。然后结合成一个新的表达式
(?!PatternB)PatternA

例如,Windows Server的机器名一般要求满足以下要求(比微软官方要求有所简化):

1. 2到15个字符。只能包括: 数字/小写字母/大写字母/减号
2. 不能全部为数字

我们就可以用以下正则表达式来校验机器名的合法性(其中蓝色部分分别为PatternB,绿色部分为PatternA):

^(?!^\d*$)([a-zA-Z0-9-]{2,15})$

•写一个正则表达式,要求匹配字符串或者满足条件A或者满足条件B

我们可以先写两个子表达式PatternA和PatternB,分别校验条件A和条件B。然后结合成一个新的表达式
(PatternA|PatternB)

例如在非必须填的电话号码域中,用户可以输入一个合法的电话号码,也可以留空

我们就可以用以下正则表达式来校验机器名的合法性(其中蓝色部分分别为PatternB,绿色部分为PatternA):

(^$|\d{7,16})

注意:行起始符(^),行终止符($)和非贪婪标志(?)在这里的使用非常重要。

您可能感兴趣的文章:
  • PHP 正则表达式效率 贪婪、非贪婪与回溯分析(推荐)
  • php正则表达式中贪婪与非贪婪介绍
  • PHP正则表达式之捕获组与非捕获组
  • PHP之正则表达式捕获组与非捕获组(详解)
  • 正则表达式之 贪婪与非贪婪模式详解(概述)
  • 小议正则表达式效率 贪婪、非贪婪与回溯
  • [正则表达式]贪婪模式与非贪婪模式

标签:湖州 本溪 泰安 大兴安岭 哈密 常州 海口 凉山

巨人网络通讯声明:本文标题《正则表达式实现与或非关系【推荐】》,本文关键词  正则,表达式,实现,与,或非,;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 下面列出与本文章《正则表达式实现与或非关系【推荐】》相关的同类信息!
  • 本页收集关于正则表达式实现与或非关系【推荐】的相关信息资讯供网民参考!
  • 推荐文章