nsdictionaries (nsstring이 아님)의 사례 및 diacritic insensitive 필터를 수행하는 방법은 무엇입니까?
-
18-09-2019 - |
문제
사전 배열이 있습니다. 각 사전의 @"이름"필드에 주어진 문자열이 포함되어 있는지 확인하여 해당 배열을 필터링하고 싶습니다.
어획량은 필터링을 케이스 및 디아크리닉에 무의미하게 만들고 싶다는 것입니다.
배열에 문자열 만 포함 된 경우 NSPredicate를 쉽게 사용할 수 있습니다. 그러나 그것은 그렇지 않으며, Nspredicate 가이 상황을 수용 할 수있는 방법은 보이지 않습니다.
사례 감수성 만 돌보는 경우 모든 항목을 고려하고 하단 기반 필터 문자열을 하단 이름과 비교할 수 있습니다. 그러나 나는 Diacritics에 대한 비슷한 속임수를 모른다.
이것에 대한 좋은 해결책이 있습니까?
해결책
이 질문에 대한 최고 답변을 확인하십시오.
해당 코드를 사용하여 Diacritics를 제거한 다음 사례 둔감 한 비교 또는 검색을 수행 할 수 있어야합니다.
다른 팁
다음과 같은 것은 어떻습니까 :
NSArray * array = .....
NSString * searchString = @"foo";
NSArray * filteredArray = [array filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"name contains[cd] %@", searchString]];
제휴하지 않습니다 StackOverflow