iOS中常用的正規表示式

2022-08-14 06:00:16 字數 3167 閱讀 7312

匹配中文:[\u4e00-\u9fa5] 

英文本母:[a-za-z] 

數字:[0-9] 

匹配中文,英文本母和數字及_: 

^[\u4e00-\u9fa5_a-za-z0-9]+$

同時判斷輸入長度:

[\u4e00-\u9fa5_a-za-z0-9_]

^[\w\u4e00-\u9fa5\uf900-\ufa2d]*$ 1、乙個正規表示式,只含有漢字、數字、字母、下劃線不能以下劃線開頭和結尾:

^(?!_)(?!.*?_$)[a-za-z0-9_\u4e00-\u9fa5]+$  其中:

^  與字串開始的地方匹配

(?!_)  不能以_開頭

(?!.*?_$)  不能以_結尾

[a-za-z0-9_\u4e00-\u9fa5]+  至少乙個漢字、數字、字母、下劃線

$  與字串結束的地方匹配

放在程式裡前面加@,否則需要\\進行轉義 @"^(?!_)(?!.*?_$)[a-za-z0-9_\u4e00-\u9fa5]+$"

(或者:@"^(?!_)\w*(?34555#5'

[\u4e00-\u9fa50-9a-za-z_]    eiieng_89_   --->   eiieng_89_

_';'eiieng_88&*9_    -->  _';'eiieng_88&*9_

_';'eiieng_88_&*9_  -->  _';'eiieng_88_&*9_

最長不得超過7個漢字,或14個位元組(數字,字母和下劃線)正規表示式

^[\u4e00-\u9fa5]$|^[\da-za-z_]$

/ 再次編輯----------------

匹配月份的正規表示式

^[1-9]$|^1[0-2]$

注:個位數月份匹配方式 前面不能加 0。

^0?[1-9]$|^1[0-2]$

注:個位數月份前可以加0或者不加。

匹配年份19**或者20**

^(19|20)[0-9]$

用法:[objc]view plain

copy

print

?+ (bool)isemailaddress:(nsstring*)candidate  

";  

nspredicate* emailtest = [nspredicatepredicatewithformat:@"self matches %@",emailregex];  

return [emailtestevaluatewithobject:candidate];  

}[objc]view plain

copy

print

?-(nsnumber *)asnumber;  

returnnil;  

}[objc]view plain

copy

print

?//摘自nsstring+beeextension.mm  

- (bool)isusername  

$)";  

nspredicate *   pred = [nspredicatepredicatewithformat:@"self matches %@",regex];  

return [predevaluatewithobject:self];  

}  - (bool)ispassword  

$)";  

nspredicate *   pred = [nspredicatepredicatewithformat:@"self matches %@",regex];  

return [predevaluatewithobject:self];    

}  - (bool)isemail  

";  

nspredicate *   pred = [nspredicatepredicatewithformat:@"self matches %@",regex];  

return [predevaluatewithobject:self];  

}  - (bool)isurl  

- (bool)istelephone  

$";  

nsstring * cm = @"^1(34[0-8]|(3[5-9]|5[017-9]|8[278])\\d)\\d$";  

nsstring * cu = @"^1(3[0-2]|5[256]|8[56])\\d$";  

nsstring * ct = @"^1((33|53|8[09])[0-9]|349)\\d$";  

nsstring * phs = @"^0(10|2[0-5789]|\\d)\\d$";  

nspredicate *regextestmobile = [nspredicatepredicatewithformat:@"self matches %@",mobile];  

nspredicate *regextestcm = [nspredicatepredicatewithformat:@"self matches %@",cm];  

nspredicate *regextestcu = [nspredicatepredicatewithformat:@"self matches %@",cu];  

nspredicate *regextestct = [nspredicatepredicatewithformat:@"self matches %@",ct];  

nspredicate *regextestphs = [nspredicatepredicatewithformat:@"self matches %@",phs];  

return  [regextestmobileevaluatewithobject:self]   ||  

[regextestphsevaluatewithobject:self]      ||  

[regextestctevaluatewithobject:self]       ||  

[regextestcuevaluatewithobject:self]       ||  

[regextestcmevaluatewithobject:self];  

}  

iOS中常用的正規表示式

在編寫處理字串的程式或網頁時,經常會有查詢符合某些複雜規則的字串的需要。正規表示式就是用於描述這些規則的工具。換句話說,正規表示式就是記錄文字規則的 很可能你使用過windows dos下用於檔案查詢的萬用字元 wildcard 也就是 和?如果你想查詢某個目錄下的所有的word文件的話,你會搜尋 ...

IOS常用正規表示式

原文 匹配中文 u4e00 u9fa5 英文本母 a za z 數字 0 9 匹配中文,英文本母和數字及 u4e00 u9fa5 a za z0 9 同時判斷輸入長度 u4e00 u9fa5 a za z0 9 w u4e00 u9fa5 uf900 ufa2d 1 乙個正規表示式,只含有漢字 數字...

python中常用正規表示式

print re.findall d 123abc 數字 1 2 3 print re.findall d abcaa123abc 非數字 a b c a a a b c print re.findall abc 123abcaaabc abc abc print re.findall aa nab...