Iphone 检测字符串是否包含中文字符

Iphone 检测字符串是否包含中文字符,iphone,objective-c,nsstring,Iphone,Objective C,Nsstring,我有一个ui搜索栏,如果用户输入英语,我希望我的数据按拼音排序,如果用户输入汉字,则按字符本身排序 有类似的吗 if (searchText isKindofClass: UTF-8String) 要检测NSString是否包含中文字符?可以使用NSRegularExpression搜索“字符族”: 他们给出了一个\p{script=cyrillic}的例子,我想通过搜索一下,你会发现一些与汉语有关的东西。如果你用\p{script=Han}来检测汉语,一定要在\p之前加上“\”。所以它

我有一个
ui搜索栏
,如果用户输入英语,我希望我的数据按拼音排序,如果用户输入汉字,则按字符本身排序

有类似的吗

if (searchText isKindofClass: UTF-8String) 

要检测
NSString
是否包含中文字符?

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


他们给出了一个
\p{script=cyrillic}
的例子,我想通过搜索一下,你会发现一些与汉语有关的东西。

如果你用
\p{script=Han}
来检测汉语,一定要在
\p
之前加上“
\
”。所以它就像

NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"\\\p{Script=Han}" options:NSRegularExpressionCaseInsensitive error:&error];

无论您键入什么字符,字符串的类型都不会更改。谢谢您的回答!我刚刚使用了
“[^a-z]”
并检查了
numberOfMatches
返回的值是否大于零。这是一个解决办法,但它会匹配
我29岁时不该匹配的值。使用
\p{script=Han}
NSRegularExpression
谢谢您的回答。请提供一个如何做到这一点的例子好吗?我查看了有关
NSRegularExpression
的苹果文档,但没有看到类似
的类:\p{script=Han}
-谢谢!