搜索
您的当前位置:首页正文

iOS正则表达式的使用方式

来源:知库网

1.正则表达式与NSPredicate(谓词)连用
- (BOOL)numExpression:(NSString ) TestString{
NSString
numExpression=@"^[0-9]+$";
NSPredicate *numPredicate = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",numExpression];
return [numPredicate evaluateWithObject:TestString];
}
这种方式匹配比较灵活,但是需要有谓词的相关知识,谓词的表达式与sqlite操作语句基本类似,学习起来也不难。

2.NSString方法

   NSString *TestString = @"TestString"; 
   NSRange range = [TestString rangeOfString:@"^[0-9]+$" options:NSRegularExpressionSearch];
   if (range.location != NSNotFound) {   
      NSLog(@"range :%@", [TestString substringWithRange:range]);
      }

3.NSRegularExpression方法

NSString *TestString = @"TestString";    
NSError *error = NULL;
NSRegularExpression *regExpression = [NSRegularExpression regularExpressionWithPattern:@"^[0-9]+$" options:NSRegularExpressionCaseInsensitive error:&error];
NSTextCheckingResult *result = [regExpression firstMatchInString:searchText options:0 range:NSMakeRange(0, [TestString length])];
if (result) {  
   NSLog(@"---%@", [TestString substringWithRange:result.range]);
}
Top