2

NSMutableArray에서 부분 문자열을 검색하는 방법은 무엇입니까?아이폰에 가변 배열의 검색 하위 문자열

있는 NSMutableArray 이름 갖는 스트링 값

검색 텍스트 이름 배열 값에서 검색 문자열이다.

for (NSString *sTemp in names) 
    { 
     NSRange titleResultsRange = [sTemp rangeOfString:searchText options:NSCaseInsensitiveSearch]; 
     //NSLog(@"sTemp = %@, searchText = %@",sTemp,searchText); 
     NSLog(@"%@",titleResultsRange.length); 
     if (titleResultsRange.length > 0) 
      [Items addObject:sTemp]; 
    } 

답변

2

제대로하고 있습니다. 문제가 무엇입니까? 당신은 또한 좋아 수행 할 수 있습니다

for (NSString *sTemp in names) 
    { 
     NSRange titleResultsRange = [sTemp rangeOfString:searchText options:NSCaseInsensitiveSearch]; 
     if (titleResultsRange.location != NSNotFound) 
      [Items addObject:sTemp]; 
    } 
+0

감사합니다. 하지만 sTemp에서 Items 배열로 값을 가져 가지 않습니다. Items 배열 값을 Console로 가져 오려고하면 null이 표시됩니다. 무엇을 할 수 있습니까? – Meghan

1

또한이처럼 자 NSPredicate 사용하여 배열을 필터링 할 수 있습니다 : 입력에 대한

NSArray *items = [names filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"self contains[cd] %@",searchText]];