C++里怎样判断字符串中含有汉字
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++里怎样判断字符串中含有汉字相关的知识,希望对你有一定的参考价值。
//返回0:无中文,返回1:有中文int IncludeChinese(char *str)
int nRet = 0;
char c;
while(c=*str++)
//如果字符高位为1且下一字符高位也是1则有中文字符
if( (c&0x80) && (*str & 0x80) )
nRet = 1;
break;
return nRet;
参考技术A 用正则表达式,对应的库,有BOOST,还有C++11都有
iOS判断字符串中含不含有汉字
方法一:
- (BOOL)hasChinese:(NSString *)str {
for(int i=0; i< [str length];i++){
int a = [str characterAtIndex:i];
if( a > 0x4e00 && a < 0x9fff)
{
return YES;
}
}
return NO;
}
方法二:
- (BOOL)isHasChineseWithStr:(NSString *)strFrom {
for (int i=0; i<strFrom.length; i++) {
NSRange range =NSMakeRange(i, 1);
NSString * strFromSubStr=[strFrom substringWithRange:range];
const char *cStringFromstr = [strFromSubStr UTF8String];
if (strlen(cStringFromstr)==3) {
//汉字
return YES;
} else if (strlen(cStringFromstr)==1) {
//字母
}
}
return NO;
}
以上是关于C++里怎样判断字符串中含有汉字的主要内容,如果未能解决你的问题,请参考以下文章