2

我有一个UISearchBar,如果用户输入英文,我希望我的数据按拼音排序,并在用户输入汉字时按字符本身排序。

有没有类似的东西

if (searchText isKindofClass: UTF-8String) 

检测一个是否NSString包含汉字?

4

2 回答 2

6

您可以使用 aNSRegularExpression搜索“字符族”:

https://developer.apple.com/library/mac/#documentation/Foundation/Reference/NSRegularExpression_Class/Reference/Reference.html

http://userguide.icu-project.org/strings/regexp

他们举了一个例子\p{script=cyrillic},我想通过搜索你会发现一些与中文相关的东西。

于 2012-08-10T08:45:45.990 回答
2

如果你习惯\p{script=Han}检测中文,一定要\在前面加上'' \p。所以就像

NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"\\\p{Script=Han}" options:NSRegularExpressionCaseInsensitive error:&error];
于 2016-02-23T09:38:14.270 回答