- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我正在尝试根据其中一个字符串字段过滤一个数组。
nameLower 和 filterLower 都有 NSString 值在里面,但我不断得到:
__NSCFString containsString:]: unrecognized selector sent to instance 0x7f876b79e160
-(void) filterFriendsArray:(NSString*)filter {
[_filteredFriendsArray removeAllObjects];
for (FacebookUser* user in _friendsArray)
{
NSString* nameLower = [user.user.name lowercaseString];
NSString* filterLower = [filter lowercaseString];
if ([nameLower containsString:filterLower])
[_filteredFriendsArray addObject:user];
}
_displayedFriendsArray = _filteredFriendsArray;
}
最佳答案
如果您希望您的代码在 iOS 7 和 iOS 8 上运行,您应该改用 rangeOfString 调用之一。基本上,如果返回的范围的长度为零,则子字符串不存在。
/* These methods return length==0 if the target string is not found. So, to check for containment: ([str rangeOfString:@"target"].length > 0). Note that the length of the range returned by these methods might be different than the length of the target string, due composed characters and such.
*/
- (NSRange)rangeOfString:(NSString *)aString;
- (NSRange)rangeOfString:(NSString *)aString options:(NSStringCompareOptions)mask;
- (NSRange)rangeOfString:(NSString *)aString options:(NSStringCompareOptions)mask range:(NSRange)searchRange;
- (NSRange)rangeOfString:(NSString *)aString options:(NSStringCompareOptions)mask range:(NSRange)searchRange locale:(NSLocale *)locale NS_AVAILABLE(10_5, 2_0);
显然,使用 rangeOfString 在类别中自己实现 containsString 很简单:
@implementation NSString (Contains)
- (BOOL)myContainsString:(NSString*)other {
NSRange range = [self rangeOfString:other];
return range.length != 0;
}
@end
关于ios - NSString containsString 崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26410420/
今天我正在修复代码中的一些警告,其中之一是 ContainsStr 中的“W1058 隐式字符串转换,可能会导致从‘string’到‘AnsiString’的数据丢失”函数。 在搜索了一段时间这个函数
当用户键入NSString时,我想在UITextView中搜索子字符串(或标记)。我想搜索大约12个不同的子字符串,例如“早晨”,“下午”,“晚上”,“下周一”,“下周二”,...“下周日”,“下周”
我在我的 iOS 应用程序中使用 PFQuery 来搜索已存在于 Parse.com 上的类中的组名。对于我的代码,我有: PFQuery *groupQuery = [PFQuery queryWi
为了进一步了解 TDD、IntelliJ 和 Java 本身,我编写了下面的简单 Java 脚本。 import java.util.ArrayList; import java.util.List;
我正在尝试根据其中一个字符串字段过滤一个数组。 nameLower 和 filterLower 都有 NSString 值在里面,但我不断得到: __NSCFString containsString
以前,当您想查看 Swift 字符串是否包含另一个字符串时,您可以将其转换为 NSString 并调用 .containsString。苹果以他们无限的智慧,使这个版本感知,所以如果你在 S2 下尝试
我是 iOS 应用开发的新手。 我正在 swift 3 中以编程方式实现搜索栏。 当我更新搜索 Controller 的内容时,出现此错误。 value of type 'string' has
我想知道是否有人能够提供帮助。我正在尝试使用 SearchBar 在 Parse 类中搜索术语。 containsString 但是区分大小写,我希望它不区分大小写。请看下面的代码; -(void)f
我正在使用 Ionic构建一个混合移动应用程序。以前我通过“ionic emulate ios”命令启动模拟器没有问题。但是突然之间,该命令开始抛出错误。 我尝试删除然后添加回 ios 平台,卸载然后
这个问题在这里已经有了答案: NSString containsString crashes (6 个答案) 关闭 7 年前。 我正在使用一个图书应用程序,用户可以在其中点击一个词,然后将为他们播放
这个问题在这里已经有了答案: How do I check if a string contains another string in Objective-C? (21 个回答) 关闭 9 年前
我想检查一个字符串是否包含另一个字符串,忽略大小写。基本上,我想这样做: assertThat(dialogTitle.getText(), containsString(equalToIgnorin
我使用的是 Java 1.7 和 Gradle 4.10.3。我尝试使用各种 gradle 依赖项,例如testCompile 组:'org.hamcrest',名称:'hamcrest',版本:'2
我是一名优秀的程序员,十分优秀!