0

我有一个 NSString 并试图找到三个字符串 @"aaa" 和 @"bbb" 和 @"ccc" 的第一个位置。

range = [text rangeOfString:@"aaa" options:NSCaseInsensitiveSearch range:NSMakeRange(rangeStart, rangeLength)];

是否有任何简单的方法可以将逻辑运算符(或)添加到rangeOfString:方法中?我试过rangeOfString:(@"aaa" || @"bbb" || @"ccc")了,但它抛出了一个异常。或者有没有简单的解决方法。谢谢。

4

2 回答 2

2

使用正则表达式

NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"(aaa|bbb|ccc)" options:0 error:NULL];
NSTextCheckingResult *match = [regex firstMatchInString:text options:0 range:NSMakeRange(0, [text length])];

希望这可以帮助...

于 2013-06-01T11:21:05.390 回答
0
[[NSRegularExpression regularExpressionWithPattern: @"(aaa|bbb|ccc)" options: NSRegularExpressionCaseInsensitive error: &error] rangeOfFirstMatchInString: text options: 0 range: NSMakeRange(rangeStart, rangeLength)]
于 2013-06-01T11:20:18.213 回答