a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > Regex > 正文

正則表達式實現與或非關系【推薦】

2020-03-16 20:51:22
字體:
來源:轉載
供稿:網友

寫一個正則表達式,要求匹配字符串同時滿足條件A和條件B

我們可以先寫兩個子表達式PatternA和PatternB,分別校驗條件A和條件B。然后結合成一個新的表達式

(?=PatternA)PatternB

例如,當在Windows Server上修改用戶密碼時,一般要求滿足以下要求:

1. 6到256個字符
2. 包括以下四類字符中的至少三類: 數字/小寫字母/大寫字母/其他字符
3. 其它無法用正則表達式校驗的規(guī)則(例如最短密碼修改時間)

我們就可以用以下正則表達式來校驗密碼的合法性(其中藍色和綠色部分分別為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})

注意:行起始符(^),行終止符($)和非貪婪標志(?)在這里的使用非常重要。


注:相關教程知識閱讀請移步到正則表達式頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 日韩精品免费观看 | 日韩av不卡在线 | 一区二区三区免费看 | 亚洲国产精品久久久 | 国产精品免费av | 草逼一区 | 天天干,夜夜操 | 精品亚洲成人 | 久久9久久 | 亚洲欧洲精品一区二区三区 | 欧美亚洲视频 | 欧美精品免费在线观看 | 天堂在线视频 | 国产综合久久 | 99久久精品免费看国产免费软件 | 欧美性18 | 91精品综合久久久久久五月天 | 亚洲精品在线网址 | 欧美日韩视频一区二区三区 | 欧日韩免费 | 亚洲欧美精品 | 亚洲免费观看视频 | 国产成人精品久久 | 97精品国产 | 免费黄色大片 | 欧美aaaaa| 欧美日韩一区二区三区四区 | 国产免费视频 | 青青青免费视频在线 | av一区二区三区 | 91在线最新 | 国产97免费视频 | 漂亮少妇videoshd忠贞 | 日韩午夜精品视频 | 日本a视频| 日韩中文一区二区三区 | 免费成人av在线 | 久久精品小视频 | 免费看a| 免费福利小视频 | 精品一区二区三区三区 |