iOS中的邮政编码验证

iOS中的邮政编码验证,ios,ios7,Ios,Ios7,我正在为iOS 7开发一个应用程序,希望在其中检索用户位置详细信息。 现在我还要用户的邮政编码。我只想在该页面上检查用户输入的邮政编码是否有效。 我想为美国和英国验证。 如何实现这一点?您可以使用此答案获取邮政编码 至于验证,这将取决于邮政编码所在的国家,但这可能是一个很好的起点 您可以使用此答案获取邮政编码 至于验证,这将取决于邮政编码所在的国家,但这可能是一个很好的起点 对于印度,您可以使用以下方法验证pincode -(BOOL)isValidPinCode:(NSString*)pi

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

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

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


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

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


对于印度,您可以使用以下方法验证pincode

-(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))$

对于印度,您可以使用以下方法验证pincode

-(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))$

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
    }

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
    }


您可能需要编辑标题,“pincode”与您的问题有什么关系?您希望验证哪些位置?你提到的英国和美国是下面的一个评论,但是你需要在你的问题中添加这个。这对英国来说是非常困难的。例如,公寓楼的不同楼层可能有不同的邮政编码,而GPS将不具备区分它们的垂直精度。一个开始你的研究(包括购买邮政编码信息的链接)的地方是ONS邮政地理页面(确保你检查了右边的相关链接):@peasure我不确定
邮政编码
over
邮政编码
是否真的更好。这似乎是一个毫无意义的编辑,我很惊讶它被批准了,因为它太小了。听上去,你完全误解了这个问题。他们只需要验证邮政编码,而与GPS位置或任何东西无关。我认为你真的想得太多了。你可能想编辑标题,“pincode”与你的问题有什么关系?你想验证哪些位置?你提到的英国和美国是下面的一个评论,但是你需要在你的问题中添加这个。这对英国来说是非常困难的。例如,公寓楼的不同楼层可能有不同的邮政编码,而GPS将不具备区分它们的垂直精度。一个开始你的研究(包括购买邮政编码信息的链接)的地方是ONS邮政地理页面(确保你检查了右边的相关链接):@peasure我不确定
邮政编码
over
邮政编码
是否真的更好。这似乎是一个毫无意义的编辑,我很惊讶它被批准了,因为它太小了。听上去,你完全误解了这个问题。他们只需要验证邮政编码,而与GPS位置或任何东西无关。我想你真的想得太多了。这不只是检查格式是否有效吗,它实际上并没有检查该位置的邮政编码是否正确。但manujmv只是检查该代码是否有效……正如@Abizern告诉我的,我还必须检查邮政编码是否正确。您好……我有一个问题……如果用户输入00000怎么办……该代码会验证这一点吗?@manujmv我在英国试用了您的代码,除了M220XC,它工作正常。这不只是检查格式是否有效,它实际上并没有检查该位置的邮政编码是否正确。但manujmv只是检查该代码是否有效……正如@Abizern告诉我的,我还必须检查邮政编码是否正确。您好……我有一个问题……如果用户输入00000怎么办……该代码会验证这一点吗?@manujmv我在英国试用了您的代码,除了M220XC之外,它工作正常。这是这里所面临问题的一个度量。“ZipCode”是美国邮政编码的本地化。其他地方还有各种其他计划。除非该应用程序只与美国地址一起使用,否则会发生破坏。这是这里所面临问题的一个衡量标准。“ZipCode”是美国邮政编码的本地化。其他地方还有各种其他计划。除非该应用程序仅与美国地址一起使用,否则将发生破坏。