Это то, что вы ищете, я думаю:
NSString *myString = @"John @ 123-456-7890";
NSString *myRegex = @"\\d{3}-\\d{3}-\\d{4}";
NSRange range = [myString rangeOfString:myRegex options:NSRegularExpressionSearch];
NSString *phoneNumber = nil;
if (range.location != NSNotFound) {
phoneNumber = [myString substringWithRange:range];
NSLog(@"%@", phoneNumber);
} else {
NSLog(@"No phone number found");
}
Вы можете положиться на стандартный механизм поиска регулярных выражений, встроенный в Какао. Таким образом, вы сможете извлечь диапазон, соответствующий номеру телефона, если таковой имеется.
Помните, что при создании регулярных выражений всегда используйте двойные экранированные косые черты.
Адаптируйте свое регулярное выражение в соответствии с той частью телефонного номера, которую вы хотите извлечь.
Редактировать
Какао предоставляет действительно простые инструменты для обработки регулярных выражений. Для более сложных задач вам следует обратиться к мощному расширению RegexKitLite для проектов Какао.