如何检查NSString是否包含另一个子字符串,此时它将返回一个布尔值。
这就是我的想法:
If myString.contains("string") then
{
//Stuff Happens
}
但是,从我所做的研究来看,似乎Obj-C对此没有任何作用。这个Wikipedia article提供了许多字符串函数,它们的差异以及所有不同语言的函数,但我看不到任何包含函数的Obj-C支持。
有没有人知道一个简单易用的功能,如上面的那个(类似于C#和VB.NET功能)?
“查找”功能会起作用吗?如果是这样,怎么样?
如果Obj-C不支持,我可以使用吗?
非常感谢任何帮助。
答案 0 :(得分:12)
if ([myString rangeOfString:@"string"].location != NSNotFound)
{
// Stuff happens
}
答案 1 :(得分:4)
NSString *someString = @"Time for an egg hunt";
if ( [someString rangeOfString:@"egg" options:NSCaseInsensitiveSearch].location != NSNotFound ) {
NSLog( @"Found it!" );
}
答案 2 :(得分:4)
如果你想成为case insensitive
。
NSRange range = [string rangeOfString:@"string" options:NSCaseInsensitiveSearch];
if (range.location != NSNotFound)
{
return range.location;
}
else
{
return nil;
}
答案 3 :(得分:2)
创建 NSString类别,并将其放入...
代码:
- (BOOL)contains:(NSString *)str
{
NSRange aRange = [self rangeOfString:str];
return (aRange.location!=NSNotFound);
}
用法:
NSString* testStr = @"This is my string";
if ([testStr contains:@"is"])
{
// do something
}
答案 4 :(得分:1)
if([string rangeOfString:substring].length > 0)
...