Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 分类NSArray igonring Umlauts_Objective C_Cocoa Touch_Sorting_Nsarray_Diacritics - Fatal编程技术网

Objective c 分类NSArray igonring Umlauts

Objective c 分类NSArray igonring Umlauts,objective-c,cocoa-touch,sorting,nsarray,diacritics,Objective C,Cocoa Touch,Sorting,Nsarray,Diacritics,我想对我拥有的数组进行排序,以便将Umlauts视为字符的正常版本(ä==a,等等)。我认为本地化的CaseInsensitive比较:应该这样做。但事实并非如此。有人吗 最佳 –f本地化CaseInsensitiveCompare:使用用户选择的当前语言中的标准规则进行比较,忽略大小写。在你的情况下,你想要忽略变音符号,而不是情况。这意味着你需要做些别的事情 您需要使用compare:options:并将NSDiacriticInsensitiveSearch作为选项传递。看 要使用它对数组进

我想对我拥有的数组进行排序,以便将Umlauts视为字符的正常版本(ä==a,等等)。我认为本地化的CaseInsensitive比较:应该这样做。但事实并非如此。有人吗

最佳

–f

本地化CaseInsensitiveCompare:使用用户选择的当前语言中的标准规则进行比较,忽略大小写。在你的情况下,你想要忽略变音符号,而不是情况。这意味着你需要做些别的事情

您需要使用
compare:options:
并将
NSDiacriticInsensitiveSearch
作为选项传递。看

要使用它对数组进行排序,您需要使用
sortedArrayUsingComparator:
使用一个块,或者在
NSString
中实现一个category方法,并将该选择器传递给
sortedArrayUsingSelector:
。别忘了给category方法加前缀,这样它就不会与框架中的私有方法重叠。所以,做一些类似的事情

@interface NSString (myaddition)
-(NSComparisonResult)mySecretDiacriticsInsensitveCompare:(NSString*)string;
@end

localizedCaseInsensitiveCompare:
使用用户选择的当前语言中的标准规则进行比较,忽略大小写。在你的情况下,你想要忽略变音符号,而不是情况。这意味着你需要做些别的事情

您需要使用
compare:options:
并将
NSDiacriticInsensitiveSearch
作为选项传递。看

要使用它对数组进行排序,您需要使用
sortedArrayUsingComparator:
使用一个块,或者在
NSString
中实现一个category方法,并将该选择器传递给
sortedArrayUsingSelector:
。别忘了给category方法加前缀,这样它就不会与框架中的私有方法重叠。所以,做一些类似的事情

@interface NSString (myaddition)
-(NSComparisonResult)mySecretDiacriticsInsensitveCompare:(NSString*)string;
@end