NSString包含字符串 - 没有空格

时间:2014-12-02 15:57:31

标签: ios nsstring

我试图检查NSString是否包含子字符串。但它不起作用,因为字符串中的单词之间没有空格。例如我需要找出是否'你好'存在于此字符串中:

@" test.hello"

NSString containsString找不到它。还有其他解决方案吗?

2 个答案:

答案 0 :(得分:0)

<强>更新

这有效,但@ rdelmar的答案要紧凑得多。

/////////////////////////////////////////////// //////////////////////////////////////////////////

我在其他地方发现了answer。基本上我必须使用NSRange并通过以下方法检查:

[string rangeOfString:@"hello" options:NSCaseInsensitiveSearch].location != NSNotFound

我还必须在检查前拆分我的字符串。因此,在示例中,单词由句点分隔。我打电话给:

NSArray *myArray = [string componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"."]];

并循环遍历执行rangeOfString搜索的字符串数组。我设置了一个BOOL,这样一旦找到我的字符串'hello',它就会停止搜索。

答案 1 :(得分:0)

iOS 8有一个新方法,localizedCaseInsensitiveContainsString:另外,还包含containsString:。

NSString *testString = @"test.hello";
BOOL found = [testString localizedCaseInsensitiveContainsString:@"Hello"];
NSLog(@"%@", found ? @"Yes":@"No"); // prints Yes