【发布时间】:2015-05-04 04:48:44
【问题描述】:
在用户在日期选择器中输入生日后,我正在正则表达式中检查有效的生日。
问题是,如果手机是俄语、中文或使用其他字符的任何其他语言,RegEx 将在月份到期。
是否有一种简单的方法可以将月份转换为数字 (1-12),即使月份显示为字母并且也可以使用任何语言?
如果有这样的方法,不管简单与否,检查用户是否正好是 13 岁或以上,而不是仅仅使用年份会容易得多。
func isValidBirthday(testStr4:String) -> Bool {
println("validate birthday: \(testStr4)")
let birthdayRegEx = "[A-Z0-9a-z, .]+(19[0-9][0-9]|200[0-3]|2003)"
let birthdayTest = NSPredicate(format: "SELF MATCHES %@", birthdayRegEx)
return birthdayTest.evaluateWithObject(testStr4)
}
【问题讨论】:
-
为什么不使用 'NSDate` 而不是 'String'
-
从日期选择器中选择一个日期返回一个字符串,有没有办法让它返回一个 NSDate?
-
date属性返回NSDate -
回应之前的评论,如果看起来真的很难,那你就做错了。