2014-11-08 2 views
2

일부 레코드를 저장하기 위해 구문 분석 데이터베이스를 사용하고 있습니다. 문자열 배열을 저장하고 있는데이 배열에서 하위 문자열을 검색 할 수 있기를 원합니다. 다음은 예입니다IOS 구문 분석 문자열의 배열에서 하위 문자열을 검색하는 방법은 무엇입니까?

배열 A :

["carbrown","blue","house","coldturkey"] 

배열 B :

["racecar","green","walking"] 

배열 C : 나는 같은 문자열을 검색 할 수 있도록하려면

["greenturkey","users","published","ramp"] 

car 그리고 배열 A와 B를 일치하는 결과로 얻거나 turkey을 검색하면 일치하는 r 배열 A와 C와 esults가, 또는 green 나에게 배열 B와 C를 제공, 등등 ..

내가 문자열은 구문 분석이를 사용할 수 있다는 것을 알고 :

- (void)whereKey:(NSString *)key containsString:(NSString *)substring 

가 배열이 가능, 어쩌면 정규식으로 뭔가?

+0

안녕하세요 @SuperKevin이 질문에 대한 해결책을 찾았습니까? – Coyote

답변

2

이 목적으로 NSPredicate를 사용할 수 있습니다. 다음은 그 예입니다.

NSArray *a = @[@"carbrown",@"blue",@"house",@"coldturkey"]; 
NSArray *b = @[@"racecar",@"green",@"walking"]; 
NSArray *c = @[@"greenturkey",@"users",@"published",@"ramp"]; 

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF contains[cd] %@", @"car"]; 
NSArray *filteredArrayA = [a filteredArrayUsingPredicate:predicate]; 
NSArray *filteredArrayB = [b filteredArrayUsingPredicate:predicate]; 
NSArray *filteredArrayC = [c filteredArrayUsingPredicate:predicate]; 

if ([filteredArrayA count]) { 
    NSLog(@"A has car in it"); 
} 
+0

감사합니다. 그러나 이러한 배열은 구문 분석 시스템에 있습니다. 이 일치하는 값을 구문 분석에서 가져올 수있는 방법을 묻습니다. 메모리에 이러한 배열이 없습니다. – SuperKevin

+0

죄송합니다, 모르겠습니다. Parse에 익숙하지 않습니다. – gabbler