我有这个谓词,它运作得很好.
NSPredicate *filter = [NSPredicate predicateWithFormat:@"code contains[cd] %@", predicateFilter];
所以,如果predicateFilter是112,此找到所有code有112它.我希望它能找到所有与BEGIN相关的代码112.
编辑:
我有这个谓词,我怎样才能使它的代码介于以predicateFilterStart开头的代码和以PredicateFilterEnd开头的代码之间?
NSPredicate *filterPredicate = [NSPredicate predicateWithFormat:@"ANY code BETWEEN %@",
[NSArray arrayWithObjects:
[NSExpression expressionForConstantValue: [NSNumber numberWithFloat: [self.predicateFilterStart floatValue]]],
[NSExpression expressionForConstantValue: [NSNumber numberWithFloat: [self.predicateFilterEnd floatValue]]],
nil]];
Run Code Online (Sandbox Code Playgroud) 我有一个NSMutableArray组成的NSStrings.当我需要对它进行排序时,我使用的[array sortUsingSelector:@selector(caseInsensitiveCompare:)]是完美的.
但有时我需要通过NSStrings 的子串对数组进行排序.在这种情况下,子串被定义为NSString跟随某个标记的一部分.事实上,标记可以在每个字符串中以不同方式定位.
显然,我可以NSString分成两个对象并对它们进行排序,但这需要进行重大更改.
有没有办法使用类似于我上面描述的选择器进行排序?
我想如果没有,那么我可以通过创建一个数组的排序副本(而不是使用选择器来完成它),然后释放原始数据.
Objective C中有哪些内容? @"%@" @"%d" @"%i"
我想搜索属性description(NSString实例)中是否有给定的单词.
我试过这个谓词:
[NSPredicate predicateWithFormat:@"description CONTAINS[cd] %@", theWord];
Run Code Online (Sandbox Code Playgroud)
它有效,但它也找到了子词.
例如,给定theWord:
汽车
它也将是这个description:
圣诞颂歌
相反,我希望我的谓词只匹配a,或者christmas,或者carol.
(我正在使用Core Data和NSFetchRequest.)
如何检查NSString是否包含另一个子字符串,此时它将返回一个布尔值.
这就是我的想法:
If myString.contains("string") then
{
//Stuff Happens
}
Run Code Online (Sandbox Code Playgroud)
但是,从我所做的研究来看,似乎Obj-C对此没有任何作用.这篇维基百科文章提供了许多字符串函数,它们的不同之处以及所有不同语言的文章,但我看不到任何包含函数的Obj-C支持.
有谁知道一个简单易用的功能,如上面的一次(类似于C#和VB.NET功能)?
"查找"功能会起作用吗?如果是这样,怎么样?
如果Obj-C不支持这个,我可以使用一种解决方法吗?
非常感谢任何帮助.
当我使用NSASCIIStringEncoding为GET请求编码一些中文字符时.
NSLog(@"%@",searchText);
NSString *stringForSearch = [searchText stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding];
NSLog(@"%@",stringForSearch);
Run Code Online (Sandbox Code Playgroud)
2012-05-05 23:51:02.669 StarHopeFundingApprovalSystem [756:f803]中
2012-05-05 23:51:06.305 StarHopeFundingApprovalSystem [756:f803](null)
第一个日志是一个中文字符,但第二个日志总是(null),请帮我这个,谢谢你提前.
您好我有一个问题,我不知道如何解决.问题是我甚至不知道如何谷歌.我已经花了几个小时在互联网上寻找解决方案,但没有成功.情况是这样的:
我有String,让我们说:
NSString *string = @"a?bc?de??fghi?jzž";
Run Code Online (Sandbox Code Playgroud)
我的结果必须是这样的:
NSString *string = @"aabccdeeefghiujzz";
Run Code Online (Sandbox Code Playgroud)
所以如果你明白我必须这样做:
用a替换±
用c替换č
用e代替ė
用e替换ę
等等..
也许有人可以帮助我?我有一个答案,但它没有得到很好的优化,我希望有一些更方便的解决方案.
提前致谢!
我正在尝试将一个NSString值复制NSMutableArray到一个新变量中.NSString stringWithString返回一个NSString与我的数组中的对象相同的内存地址.为什么?
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[])
{
@autoreleasepool {
NSMutableArray *arr = [NSMutableArray arrayWithObject:@"first"];
NSLog(@"string is '%@' %p", [arr objectAtIndex:0], [arr objectAtIndex:0]);
// copy the string
NSString *copy = [NSString stringWithString:[arr objectAtIndex:0]];
NSLog(@"string is '%@' %p", copy, copy);
}
return 0;
}
Run Code Online (Sandbox Code Playgroud) 您好我正在试图弄清楚如何将iOS应用程序中的base64字符串转换/解码为NSData,因此我可以解密我加密的数据.
我可以在这里找到用于将NSData 转换为base 64字符串的方法.有没有类似的方法来创建解码/转换base 64字符串到NSData的方法?
在我正在研究的应用程序中,我正在从for循环中的文本文件中读取数值,然后进行一些计算并将结果附加到结果字符串.
该文件中包含22050个值.我注意到,超过一定数量的循环/值附加(~5300)它往往会崩溃.
我想也许我有一个内存泄漏,所以我摆脱了附加的字符串,一切正常.我试图摆脱一切,但字符串附加和应用程序崩溃.我对所有异常都有一个断点,我没有任何异常.
我想确保我开始一个新项目.所有我放在那里的是一个UIButton,推送时调用这段代码:
- (IBAction)TestPressed:(id)sender
{
NSString *testString = @"";
for (int i = 0; i < 22050; i++)
{
testString = [testString stringByAppendingString:@"12.34567890\n"];
}
NSLog(@"%@", testString);
}
Run Code Online (Sandbox Code Playgroud)
我在NSLog线上有一个断点.该应用程序之前崩溃了.
NSString长度有限制吗?它是否使用了太多内存?