亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

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

 更新時間:2018年07月04日 10:38:41   作者:隱0士  
這篇文章主要介紹了正則表達式實現與或非關系,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下

寫一個正則表達式,要求匹配字符串同時滿足條件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})

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

相關文章

最新評論