Objective c 目标C:确定NSString中是否存在子字符串的最简单方法是什么?
在我最熟悉的PHP中,它是一个单行表达式:Objective c 目标C:确定NSString中是否存在子字符串的最简单方法是什么?,objective-c,Objective C,在我最熟悉的PHP中,它是一个单行表达式: strpos('abc', 'b') !== false 目标C的等价物是什么 [@"abc" rangeOfString:@"b"].location != NSNotFound 返回值NSRange结构,给出中的位置和长度 第一次出现阿斯特林的接受者。返回{NSNotFound, 0}如果找不到aString或aString为空@ 您可以在中找到更多有用的字符串操作函数 返回值NSRange结构,给出中的位置和长度 第一次出现阿斯特林的接受者。
strpos('abc', 'b') !== false
目标C的等价物是什么
[@"abc" rangeOfString:@"b"].location != NSNotFound
返回值NSRange结构,给出中的位置和长度
第一次出现阿斯特林的接受者。返回{NSNotFound,
0}如果找不到aString或aString为空@
您可以在中找到更多有用的字符串操作函数
返回值NSRange结构,给出中的位置和长度
第一次出现阿斯特林的接受者。返回{NSNotFound,
0}如果找不到aString或aString为空@
您可以在中找到更多有用的字符串操作函数。我认为可以使用类别将类似这样的功能很好地打包起来
@interface NSString (ContainsString)
- (BOOL)containsString:(NSString *)string;
@end
@implementation NSString (ContainsString)
- (BOOL)containsString:(NSString *)string
{
NSRange range = [self rangeOfString:string options:NSCaseInsensitiveSearch];
return range.location != NSNotFound;
}
@end
当使用时,它使意思非常清楚
if ([@"this is a string" containsString:@"a string"]) {
…
}
在大多数项目中,这将是一个更大的字符串方法类别的一部分,而不是它自己的一个方法类别。我认为类别可以用来很好地打包这样的功能
@interface NSString (ContainsString)
- (BOOL)containsString:(NSString *)string;
@end
@implementation NSString (ContainsString)
- (BOOL)containsString:(NSString *)string
{
NSRange range = [self rangeOfString:string options:NSCaseInsensitiveSearch];
return range.location != NSNotFound;
}
@end
当使用时,它使意思非常清楚
if ([@"this is a string" containsString:@"a string"]) {
…
}
在大多数项目中,这将是一个更大的字符串方法类别的一部分,而不是它自己的一个方法类别。这有帮助吗?Cocoa类的文档记录相当完整。很明显,当你需要什么的时候,你会被鼓励去看看它们。@zneak我完全同意,但一个简单的问题并不一定是一个坏问题——特别是考虑到有些人对简单问题的解决方法是多么的做作。记录简单问题的好答案对社区有益。我前几天发表的一篇帖子就是一个很好的证明:任何人都不应该编写与一些错误答案相同的代码。将简单的答案记录下来最终是一件好事。这有帮助吗?Cocoa类的文档记录相当完整。很明显,当你需要什么的时候,你会被鼓励去看看它们。@zneak我完全同意,但一个简单的问题并不一定是一个坏问题——特别是考虑到有些人对简单问题的解决方法是多么的做作。记录简单问题的好答案对社区有益。我前几天发表的一篇帖子就是一个很好的证明:任何人都不应该编写与一些错误答案相同的代码。将简单的答案记录下来最终是一件好事。