我正在尝试编写一个正则表达式来匹配一个没有任何其他字符的 10 位数字。例如。2345678901
第一个数字应该在 2-9 之间,其余 9 个数字可以是任何数字
我尝试过编写不同的正则表达式,但没有一个奏效。
NSString *newString = [textField.text stringByReplacingCharactersInRange:range withString:string];
//^([0-9]+)?(([0-9]{9})?)?$ (([2-9]{1})?)?(([0-9]{8,9})?)?
NSString *expression = [NSString stringWithFormat:@"^(([2-9]{1})?)?(([0-9]{8,9})?)?$"];
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:expression
options:NSRegularExpressionCaseInsensitive
error:nil];
NSUInteger numberOfMatches = [regex numberOfMatchesInString:newString
options:0
range:NSMakeRange(0, [newString length])];
if (numberOfMatches == 0) {
return NO;
}
return YES;
`
谢谢您的帮助。