IOS 正則表達式

//郵箱正則表達式

+ (BOOL) validateEmail:(NSString *)emailide

{測試

    NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";lua

    NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegex];url

    return [emailTest evaluateWithObject:email];spa

}orm

 

 

//手機號碼驗證ip

+ (BOOL) validateMobile:(NSString *)mobile字符串

{get

    //手機號以13, 15,18開頭,八個 \d 數字字符

    NSString *phoneRegex = @"^((13[0-9])|(15[^4,\\D])|(18[0,0-9]))\\d{8}$";

    NSPredicate *phoneTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",phoneRegex];

    return [phoneTest evaluateWithObject:mobile];

}

 

 

//車牌號驗證

+ (BOOL) validateCarNo:(NSString *)carNo

{

    NSString *carRegex = @"^[\u4e00-\u9fa5]{1}[a-zA-Z]{1}[a-zA-Z_0-9]{4}[a-zA-Z_0-9_\u4e00-\u9fa5]$";

    NSPredicate *carTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",carRegex];

    NSLog(@"carTest is %@",carTest);

    return [carTest evaluateWithObject:carNo];

}

 

 

//車型

+ (BOOL) validateCarType:(NSString *)CarType

{

    NSString *CarTypeRegex = @"^[\u4E00-\u9FFF]+$";

    NSPredicate *carTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",CarTypeRegex];

    return [carTest evaluateWithObject:CarType];

}

 

 

//用戶名

+ (BOOL) validateUserName:(NSString *)name

{

    NSString *userNameRegex = @"^[A-Za-z0-9]{6,20}+$";

    NSPredicate *userNamePredicate = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",userNameRegex];

    BOOL B = [userNamePredicate evaluateWithObject:name];

    return B;

}

 

 

//密碼

+ (BOOL) validatePassword:(NSString *)passWord

{

    NSString *passWordRegex = @"^[a-zA-Z0-9]{6,20}+$";

    NSPredicate *passWordPredicate = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",passWordRegex];

    return [passWordPredicate evaluateWithObject:passWord];

}

 

 

//暱稱

+ (BOOL) validateNickname:(NSString *)nickname

{

    NSString *nicknameRegex = @"^[\u4e00-\u9fa5]{4,8}$";

    NSPredicate *passWordPredicate = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",nicknameRegex];

    return [passWordPredicate evaluateWithObject:nickname];

}

 

 

//身份證號

+ (BOOL) validateIdentityCard: (NSString *)identityCard

{

    BOOL flag;

    if (identityCard.length <= 0) {

        flag = NO;

        return flag;

    }

    NSString *regex2 = @"^(\\d{14}|\\d{17})(\\d|[xX])$";

    NSPredicate *identityCardPredicate = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",regex2];

    return [identityCardPredicate evaluateWithObject:identityCard];

}


---------------------------------------------------------------------------------------------------------

驗證數字:^[0-9]*$

驗證n位的數字:^\d{n}$

驗證至少n位數字:^\d{n,}$

驗證m-n位的數字:^\d{m,n}$

驗證零和非零開頭的數字:^(0|[1-9][0-9]*)$

驗證有兩位小數的正實數:^[0-9]+(.[0-9]{2})?$

驗證有1-3位小數的正實數:^[0-9]+(.[0-9]{1,3})?$

驗證非零的正整數:^\+?[1-9][0-9]*$

驗證非零的負整數:^\-[1-9][0-9]*$

驗證非負整數(正整數 + 0) ^\d+$

驗證非正整數(負整數 + 0) ^((-\d+)|(0+))$

驗證長度爲3的字符:^.{3}$

驗證由26個英文字母組成的字符串:^[A-Za-z]+$

驗證由26個大寫英文字母組成的字符串:^[A-Z]+$

驗證由26個小寫英文字母組成的字符串:^[a-z]+$

驗證由數字和26個英文字母組成的字符串:^[A-Za-z0-9]+$

驗證由數字、26個英文字母或者下劃線組成的字符串:^\w+$

驗證用戶密碼:^[a-zA-Z]\w{5,17}$ 正確格式爲:以字母開頭,長度在6-18之間,只能包含字符、數字和下劃線。

驗證是否含有 ^%&',;=?$\" 等字符:[^%&',;=?$\x22]+

驗證漢字:^[\u4e00-\u9fa5],{0,}$

驗證Email地址:^\w+[-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$

驗證InternetURL:^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$ ;^[a-zA-z]+://(w+(-w+)*)(.(w+(-w+)*))*(?S*)?$

驗證電話號碼:^(\(\d{3,4}\)|\d{3,4}-)?\d{7,8}$:--正確格式爲:XXXX-XXXXXXX,XXXX-XXXXXXXX,XXX-XXXXXXX,XXX-XXXXXXXX,XXXXXXX,XXXXXXXX。

驗證身份證號(15位或18位數字):^\d{15}|\d{}18$

驗證一年的12個月:^(0?[1-9]|1[0-2])$ 正確格式爲:「01」-「09」和「1」「12」

驗證一個月的31天:^((0?[1-9])|((1|2)[0-9])|30|31)$ 正確格式爲:0一、09和一、31。

整數:^-?\d+$

非負浮點數(正浮點數 + 0):^\d+(\.\d+)?$

正浮點數 ^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$

非正浮點數(負浮點數 + 0) ^((-\d+(\.\d+)?)|(0+(\.0+)?))$

負浮點數 ^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$

浮點數 ^(-?\d+)(\.\d+)?$

××××××××××××××××××××××××××××××××××××××

如下未經測試,請驗證後使用

1.只能輸入數字和英文的: 

<input onkeyup="value=value.replace(/[\W]/g,'') " onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))" ID="Text1" NAME="Text1">

2.只能輸入數字的: 

<input onkeyup="value=value.replace(/[^\d]/g,'') " onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))" ID="Text2" NAME="Text2">

3.只能輸入全角的: 

<input onkeyup="value=value.replace(/[^\uFF00-\uFFFF]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF00-\uFFFF]/g,''))" ID="Text3" NAME="Text3">

4.只能輸入漢字的: 

<input onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))" ID="Text4" NAME="Text4">

5.郵件地址驗證:

var regu = "^(([0-9a-zA-Z]+)|([0-9a-zA-Z]+[_.0-9a-zA-Z-]*[0-9a-zA-Z]+))@([a-zA-Z0-9-]+[.])+([a-zA-Z]{2}|net|NET|com|COM|gov|GOV|mil|MIL|org|ORG|edu|EDU|int|INT)$"

var re = new RegExp(regu);

if (s.search(re) != -1) {

return true;

} else {

window.alert ("請輸入有效合法的E-mail地址 !")

return false;

}

6.身份證:

"^\\d{17}(\\d|x)$"

7.17種正則表達式

"^\\d+$"  //非負整數(正整數 + 0) 

"^[0-9]*[1-9][0-9]*$"  //正整數 

"^((-\\d+)|(0+))$"  //非正整數(負整數 + 0) 

"^-[0-9]*[1-9][0-9]*$"  //負整數 

"^-?\\d+$"    //整數 

"^\\d+(\\.\\d+)?$"  //非負浮點數(正浮點數 + 0) 

"^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$"  //正浮點數 

"^((-\\d+(\\.\\d+)?)|(0+(\\.0+)?))$"  //非正浮點數(負浮點數 + 0) 

"^(-(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*)))$"  //負浮點數 

"^(-?\\d+)(\\.\\d+)?$"  //浮點數 

"^[A-Za-z]+$"  //由26個英文字母組成的字符串 

"^[A-Z]+$"  //由26個英文字母的大寫組成的字符串 

"^[a-z]+$"  //由26個英文字母的小寫組成的字符串 

"^[A-Za-z0-9]+$"  //由數字和26個英文字母組成的字符串 

"^\\w+$"  //由數字、26個英文字母或者下劃線組成的字符串 

"^[\\w-]+(\\.[\\w-]+)*@[\\w-]+(\\.[\\w-]+)+$"    //email地址 

"^[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?$"  //url

相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息