嗨我需要法國的電話號碼驗證。不能做正則表達式匹配
有效的格式:+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