2011-10-05 2 views
4

NSArray에는 독일어 문자열이 거의 없습니다 (åä 등의 움라우트 포함). 예를 들어 "gënder"와 같은 단어가 배열에 있다고 가정합니다. 사용자가 텍스트 필드에 "gen"을 입력합니다. "gen"문자와 일치하는 문자열의 단어를 검사 할 수 있습니다. 움라우트를 영어 문자열로 간주하여 문자열을 비교하는 방법은 무엇입니까? 위의 예에서 사용자가 "gen"을 입력하면 "gënder"를 반환해야합니다.iPhone - 독일어 움라우트와 문자열 비교

이러한 유형의 비교를위한 솔루션이 있습니까?

답변

10

다양한 NSString 비교 방법 중 NSDiacriticInsensitiveSearch 옵션을 사용하십시오. 설명서에 설명 된대로 :

검색은 분음 기호를 무시합니다. 예를 들어, 'ö'는 'o'와 같습니다. 예를 들어

:

NSString *text = @"gënder"; 
NSString *searchString = @"ender"; 

NSRange rng = [text rangeOfString:searchString 
          options:NSDiacriticInsensitiveSearch]; 

if (rng.location != NSNotFound) 
{ 
    NSLog(@"Match at %@", NSStringFromRange(rng)); 
} 
else 
{ 
    NSLog(@"No match"); 
} 
+0

답변 주셔서 감사 많은. – Satyam

+0

+1 : 잘 보니 ... – Jhaliya