gpt4 book ai didi

ios - 用于在 Swift 中为 UITextField 验证 Civil ID 的正则表达式

转载 作者:行者123 更新时间:2023-12-01 19:53:35 25 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Validation for input string is CivilID or not?

(1 个回答)


4年前关闭。




我有一个格式如下的 UITextfield 。这是我们通常在海湾国家看到的公民身份证。所以我需要在 Swift 的 UITextfield 中验证相同的内容。

公民 ID 格式 - NYYMMDDNNNNN 其中 N 一个数字,YY 出生年份的最后两位数字,MM 出生月份,DD 出生日期..

请告诉我如何对此进行验证。

最佳答案

这是一个如何使用正则表达式的示例

var civilID = "4 88 05 20 8787"
var isValidCivilID: Bool {
do {
// the first 0 (?!00) checks that the numbers should not be all zero and d{2} it should have 2 digigts remember it's simple you can make it much complex
// also if you want space in between or not
let regex = try NSRegularExpression(pattern: "\\d{1} (?!00)\\d{2} (?!00)\\d{2} (?!00)\\d{2} (?!0000)\\d{4}", options: .caseInsensitive)
return regex.firstMatch(in: civilID, options: NSRegularExpression.MatchingOptions(rawValue: 0), range: NSMakeRange(0, civilID.characters.count)) != nil
} catch {
return false
}
}

如果您没有再次检查格式,则删除正则表达式中的空格,如果civilID正确填写,它将返回true,否则返回false

如果您想在字符串扩展中添加这些检查并阅读更多内容,请参阅此链接 Swift Extensions, extending Strings

关于ios - 用于在 Swift 中为 UITextField 验证 Civil ID 的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44068036/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com