Я пытаюсь заставить следующее регулярное выражение работать на ios, чтобы убедиться, что пользователь вводит только числа и точку. Я не могу получить количество совпадений, превышающее 0. Я также пробовал NSRange one, и это даст мне 0, несмотря ни на что, поэтому мое регулярное выражение не работает, даже если я уверен, что он должен с что у меня там есть. Какие-либо предложения.
Код, который я написал, здесь с errorRegex определен в файле .h, и regError также определен.
errorRegex = [NSRegularExpression regularExpressionWithPattern:@"[^0-9.]*"
options: NSRegularExpressionCaseInsensitive error:®Error];
NSUInteger rangeOfFirstMatch = [errorRegex numberOfMatchesInString:servAmount1TF.text
options:0 range:NSMakeRange(0, [servAmount1TF.text length])];
@"\\b[^0-9^.]*\\b"
, в частности, вторая вставка. Вы хотите, чтобы класс символов соответствовал чему-либо, кроме цифр или десятичной точки? Если так, то я думаю, вы хотите@"\\b[^0-9.]*\\b"
. - person David Gorsline   schedule 04.06.2012