我想知道是否可以填充NSArray的rangeOfString對象。因爲我在rangeOfString:
之後有一長串對象,NSArray biglist的數量高於列表的數量。Objective C如何填寫NSArray的rangeOfString?
我想過濾主列表的小列表中的對象。
請告訴我,如果這不明確。
我的代碼如下:
NSArray *biglist = [[NSArray alloc] initWithArray:
[[NSString stringWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"mainlist" ofType:@"txt"]
encoding:NSUTF8StringEncoding error:NULL] componentsSeparatedByString:@"\n"]];
NSArray *list = [[NSArray alloc] initWithArray:
[[NSString stringWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"smalllist" ofType:@"txt"]
encoding:NSUTF8StringEncoding error:NULL] componentsSeparatedByString:@"\n"]];
for (NSString *listword in list);
NSMutableArray *wordlist = [[NSMutableArray alloc] init];
NSMutableArray *worindex = [[NSMutableArray alloc] init];
NSMutableIndexSet *mindexes = [[NSMutableIndexSet alloc] init];
NSMutableDictionary *mutdic = [[NSMutableDictionary alloc] init];
NSMutableArray *mutarray = [[NSMutableArray alloc] init];
for (NSString *s in mainlist)
{
NSRange ran = [s rangeOfString:listword];
if (ran.location !=NSNotFound)
{
//my codes here
}
}
編輯:
我想我可以寫
int i;
for (i = 0; i<[list count]; i++)
{
NSString *same = [list objectAtIndex:i];
NSLog (@"listword: %@", same);
}
解決這個問題,但我不知道在哪裏放置它,裏面在mainlist或外部的for循環。
編輯:這個for循環在main for循環中工作。
編輯: 嘗試了這些代碼,但它不以某種方式工作..
NSArray *list = [[NSArray alloc] initWithArray:
[[NSString stringWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"small" ofType:@"txt"]
encoding:NSUTF8StringEncoding error:NULL] componentsSeparatedByString:@"\n"]];
NSArray *mainlist = [[NSArray alloc] initWithArray:
[[NSString stringWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"mainlist" ofType:@"txt"]
encoding:NSUTF8StringEncoding error:NULL] componentsSeparatedByString:@"\n"]];
NSMutableArray *large = [NSMutableArray arrayWithArray:mainlist];
NSArray *newlarge;
for (NSString *listword in list)
{
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(SELF beginswith[c] %@)",listword];
newlarge = [large filteredArrayUsingPredicate:predicate];
}
NSLog (@"large: %@", newlarge);
NSLog (@"finished!");
該解決方案是非常適合的對象的100%匹配。我有像「幫助 - >這裏的幫助定義......」,「什麼 - >定義」等對象,我想刪除該單詞與另一個數組中的單詞匹配的行。這就是爲什麼我必須使用'rangeOfString'。 – wagashi