嗨我需要法国的电话号码验证。不能做正则表达式匹配
有效的格式:+262#########
验证在textDidChang完成:所以每次我需要检查每一个数字都属于上述数字。
我正则表达式如下
[[NSPredicate predicateWithFormat:@"SELF MATCHES %@", @"+2?6?2?\d?\d?\d?\d?\d?\d?\d?\d?\d?"] evaluateWithObject:@"+262989878989"]
尽管执行该行应用程序崩溃
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Can't do regex matching, reason: (Can't open pattern U_REGEX_RULE_SYNTAX (string 2, pattern +2?6?2?\d?\d?\d?\d?\d?\d?\d?\d?\d?, case 0, canon 0))'
帮我解决这个问题。
法国电话号码的规则是什么?他们从262开始,然后有9位数字?共有12个? – NSNoob
@ NSNoob:是的,https://developer.apple.com/library/ios/documentation/Foundation/Reference/NSRegularExpression_Class/这里我读了“\ d”获取数字为什么它不工作.. – TamilKing
请参阅Abhinav的答案。它应该工作。只需添加00号码的验证规则以及+号码 – NSNoob