<分区>
我有一个从我的服务器返回的 NSString
。在显示字符串之前,我需要检测它是否包含汉字。
我尝试使用 ASCII 和 UTF16 或 UTF8,但它对所有字符串都返回 true。
有没有更好的解决方案?
<分区>
我有一个从我的服务器返回的 NSString
。在显示字符串之前,我需要检测它是否包含汉字。
我尝试使用 ASCII 和 UTF16 或 UTF8,但它对所有字符串都返回 true。
有没有更好的解决方案?
最佳答案
如 this answer 中所述, 你可以使用 NSRegularExpression
来搜索 \p{script=Han}
:
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"\p{script=Han}" options:NSRegularExpressionCaseInsensitive error:nil];
if ([regex numberOfMatchesInString:string options:0 range:NSMakeRange(0, [string length])] > 0) {
// string contains Chinese characters
}
这将检查字符串中的任何字符是否匹配\p{script=Han}
,这是汉字Unicode范围的说明符。
关于ios - 如何检测字符串中的汉字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30371370/