Вы можете использовать NSDataDetector (https://developer.apple.com/library/ios/documentation/Foundation/Reference/NSDataDetector_Class/)
Поддерживаются следующие типы:
NSTextCheckingTypeOrthography = 1ULL << 0,
NSTextCheckingTypeSpelling = 1ULL << 1,
NSTextCheckingTypeGrammar = 1ULL << 2,
NSTextCheckingTypeDate = 1ULL << 3,
NSTextCheckingTypeAddress = 1ULL << 4,
NSTextCheckingTypeLink = 1ULL << 5,
NSTextCheckingTypeQuote = 1ULL << 6,
NSTextCheckingTypeDash = 1ULL << 7,
NSTextCheckingTypeReplacement = 1ULL << 8,
NSTextCheckingTypeCorrection = 1ULL << 9,
NSTextCheckingTypeRegularExpression = 1ULL << 10
NSTextCheckingTypePhoneNumber = 1ULL << 11,
NSTextCheckingTypeTransitInformation = 1ULL << 12
ex.
NSError *error = NULL;
NSDataDetector *detector = [NSDataDetector dataDetectorWithTypes:NSTextCheckingTypePhoneNumber error:&error];
NSUInteger numberOfMatches = [detector numberOfMatchesInString:string options:0 range:NSMakeRange(0, [string length])];
NSArray *matches = [detector matchesInString: stringoptions:0 range:NSMakeRange(0, [string length])];
for (NSTextCheckingResult *match in matches) {
NSRange matchRange = [match range];
if ([match resultType] == NSTextCheckingTypePhoneNumber) {
NSString *phoneNumber = [match phoneNumber];
}
}
Я получил номер телефона с помощью кода, спасибо. Но я не мог отделить код конференции. Как получить его с помощью NSDataDetector. –
для кода конференции вы можете использовать регулярное выражение. Если формат всегда один и тот же, вы можете просто использовать '\ d {3} \ d {3} \ d {5}' в качестве регулярного выражения и использовать класс 'NSRegularExpression'. –