查找字符串是否包含单词

时间:2015-04-03 10:04:43

标签: objective-c regex cocoa-touch

注意:字符串包含单词,而不是字符串。我知道rangeOfString方法。

示例:“Apple在加利福尼亚设计”不包含“App”字样,但包含“Apple”字样。

1 个答案:

答案 0 :(得分:2)

在正则表达式模式中使用单词边界\\b来匹配整个单词。

这是example code

NSString *myText = @"Designed by Apple in California";
NSError *error = nil;
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"\\bApple\\b" options:NSRegularExpressionCaseInsensitive error:&error];
NSRange textRange = NSMakeRange(0, myText.length);
NSRange matchRange = [regex rangeOfFirstMatchInString:myText options:0 range:textRange];
if (matchRange.location != NSNotFound)
    NSLog(@"There is a match!");
else
    NSLog(@"No match!");

使用@"\\bApple\\b",您将获得“有匹配!”信息。使用@"\\bApp\\b",您将获得“不匹配!”。