iOS中的邮政编码验证

时间:2013-11-21 12:03:15

标签: ios ios7

我正在为iOS 7开发一个应用程序,我想在其中检索用户位置详细信息。 现在我也想要用户的邮政编码。我想只检查用户输入的邮政编码是否有效的页面。 我想验证美国和英国。 怎么做到这一点?

3 个答案:

答案 0 :(得分:3)

对于India,您可以使用以下方法验证密码

-(BOOL)isValidPinCode:(NSString*)pincode    {
    NSString *pinRegex = @"^[0-9]{6}$";
    NSPredicate *pinTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", pinRegex];

    BOOL pinValidates = [pinTest evaluateWithObject:pincode];
    return pinValidates;
}

对于美国,您可以使用

^\d{5}(-\d{4})?$

对于英国,请使用此

^([A-PR-UWYZ]([0-9]{1,2}|([A-HK-Y][0-9]|[A-HK-Y][0-9]([0-9]|[ABEHMNPRV-Y]))|[0-9][A-HJKS-UW])\ [0-9][ABD-HJLNP-UW-Z]{2}|(GIR\ 0AA)|(SAN\ TA1)|(BFPO\ (C\/O\ )?[0-9]{1,4})|((ASCN|BBND|[BFS]IQQ|PCRN|STHL|TDCU|TKCA)\ 1ZZ))$

答案 1 :(得分:0)

您可以使用此答案来获取邮政编码。

Get the Zip Code of the Current Location - iPhone SDK

至于验证,它将取决于邮政编码所在的国家/地区,但这可能是一个很好的起点。

how to validate Zipcode for US or Canada in iOS?

答案 2 :(得分:0)

Swift 3.0

对于美国,您可以使用以下方法验证ZipCode

func validZipCode(postalCode:String)->Bool{
        let postalcodeRegex = "^[0-9]{5}(-[0-9]{4})?$"
        let pinPredicate = NSPredicate(format: "SELF MATCHES %@", postalcodeRegex)
        let bool = pinPredicate.evaluate(with: postalCode) as Bool
        return bool
    }