Использование NSRegularExpression для проверки только String или Number - PullRequest
0 голосов
/ 25 апреля 2011

хорошо, в IPad у меня есть 2 текстовых поля, одно из которых принимает только строку, а другое textField принимает только целые числа.

, поэтому я могу проверить их, используя NSRegularExpression?

Ответы [ 2 ]

0 голосов
/ 12 октября 2011

Вы можете использовать NSPredicate , чтобы служить вашей цели здесь.

Для сопоставления номеров:

NSString *number = @"12345";
NSString *regex = @"[0-9]*";
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex];
BOOL match = [predicate evaluateWithObject:number]);

Для сопоставления строк:

NSString *string = @"Hello";
NSString *regex = @"[a-z]*";
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF MATCHES[C] %@", regex];
BOOL match = [predicate evaluateWithObject:string]);

В приведенном выше регулярном выражении @"[a-z]*"; я опустил прописные буквы "A-Z", потому что я использовал MATCHES[C] в предикате, в котором C обозначает нечувствительность к регистру.

0 голосов
/ 25 апреля 2011

Если вы используете библиотеку RegExKit

[_yourString isMatchedByRegex:@"\\d+"];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...