2011-10-05 222 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