iOS 2017 最新手機(jī)號正則判斷

OC版:

//判斷手機(jī)號
- (BOOL)checkoutPhoneNum: (NSString *)phoneNum {
    NSString *regexStr = @"^1[3,8]\\d{9}|14[5,7,9]\\d{8}|15[^4]\\d{8}|17[^2,4,9]\\d{8}$";
    NSError *error;
    NSRegularExpression *regular = [NSRegularExpression regularExpressionWithPattern:regexStr options:NSRegularExpressionCaseInsensitive error:&error];
    if (error) return NO;
    NSInteger count = [regular numberOfMatchesInString:phoneNum options:NSMatchingReportCompletion range:NSMakeRange(0, phoneNum.length)];
    if (count > 0) {
        return YES;
    } else {
        return NO;
    }
}

Swift(3.0.1):

func checkoutPhoneNum(for regex: String, in phoneNum: String) -> Bool {
    do {
        let regex = try NSRegularExpression(pattern: regex)
        let nsString = phoneNum as NSString
        let results = regex.matches(in: phoneNum, range: NSRange(location: 0, length: nsString.length))
        let resultArray = results.map { nsString.substring(with: $0.range) }
        print(resultArray.count)
        if resultArray.count > 0 {
            return true
        } else {
            return false
        }
    } catch let error {
        print("無效正則表達(dá)式: \(error.localizedDescription)")
        return false
    }
}

參考鏈接
github

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容