Ale*_*lex 124 string objective-c nsstring
如何检测字符串是否包含某个单词?例如,我有一个字符串,其下面是:
@"Here is my string."
Run Code Online (Sandbox Code Playgroud)
我想知道我是否可以检测字符串中的单词,例如"is".
Jac*_*kin 192
我是这样做的:
NSString *someString = @"Here is my string";
NSRange isRange = [someString rangeOfString:@"is " options:NSCaseInsensitiveSearch];
if(isRange.location == 0) {
//found it...
} else {
NSRange isSpacedRange = [someString rangeOfString:@" is " options:NSCaseInsensitiveSearch];
if(isSpacedRange.location != NSNotFound) {
//found it...
}
}
Run Code Online (Sandbox Code Playgroud)
您可以轻松地将其作为类别添加到NSString:
@interface NSString (JRStringAdditions)
- (BOOL)containsString:(NSString *)string;
- (BOOL)containsString:(NSString *)string
options:(NSStringCompareOptions)options;
@end
@implementation NSString (JRStringAdditions)
- (BOOL)containsString:(NSString *)string
options:(NSStringCompareOptions)options {
NSRange rng = [self rangeOfString:string options:options];
return rng.location != NSNotFound;
}
- (BOOL)containsString:(NSString *)string {
return [self containsString:string options:0];
}
@end
Run Code Online (Sandbox Code Playgroud)
小智 89
使用以下代码扫描句子中的单词.
NSString *sentence = @"The quick brown fox";
NSString *word = @"quack";
if ([sentence rangeOfString:word].location != NSNotFound) {
NSLog(@"Yes it does contain that word");
}
Run Code Online (Sandbox Code Playgroud)
sib*_*urb 22
在iOS8中,您现在可以使用:
BOOL containsString = [@"Here is my string." containsString:@"is"];
Run Code Online (Sandbox Code Playgroud)
有一篇关于如何在iOS7中"改装"它的有趣帖子:http://petersteinberger.com/blog/2014/retrofitting-containsstring-on-ios-7/