博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
提取CString中的汉字及个数
阅读量:7080 次
发布时间:2019-06-28

本文共 745 字,大约阅读时间需要 2 分钟。

此代码是我参考别的博文所修改,具体出处不太清楚了! 

//只保留汉字

int ChineseCharNum(const CString& strSrc)
{
  int iLen = strSrc.GetLength();
  int iRetLen = 0;

  CString strRet;

  for(int i=0; i<iLen && (i+1)<iLen; i++)

  {
    UCHAR c1 = (UCHAR)strSrc.GetAt(i);
    UCHAR c2 = (UCHAR)strSrc.GetAt(i+1);
    if (c1 < 128)
    {
      continue;
    }
    //GB2312中非汉字的编码
    if (((c1>=0xa1&&c1<=0xa9)&&(c2>=0xa1&&c2<=0xfe)) || ((c1>=0xa8&&c1<=0xa9)&&(c2>=0x40&&c2<=0xa0)))
    {
      i++;
      continue;
    }

    i++;

    iRetLen++;

    strRet.Insert(strRet.GetLength(),c1);

    strRet.Insert(strRet.GetLength(),c2);
    //或者使用
    //strRet+=strSrc.Mid(i,2);
  }
  //cout <<strRet.GetBuffer(0) << endl;
  return iRetLen;
}

转载于:https://www.cnblogs.com/sancong/p/6293974.html

你可能感兴趣的文章
python-14-描述符应用和类的装饰器
查看>>
帖子回复列表缓存优化日志
查看>>
单元测试利器Mockito框架
查看>>
[译]使用MVI打造响应式APP(一):到底是什么Model
查看>>
java反射
查看>>
Heap(堆结构/优先队列)-Swift实现
查看>>
Android消息机制Handler
查看>>
静/动态库的简单制作
查看>>
图片加载之AFNetwork(上)
查看>>
ACID之I:事务隔离
查看>>
iOS核心动画高级技术(十四) 图像IO
查看>>
换个姿势学数学:广义二次函数的致命魔术
查看>>
怎样用MP3转换器转换音频格式
查看>>
TypeScript--es5中的类,继承,静态方法
查看>>
单页面路由工程使用微信分享及二次分享解决方案
查看>>
RESTful API 中的 Status code 是否要遵守规范
查看>>
Redis中的lru算法实现
查看>>
从手忙脚乱到袖手旁观:RPA对财务流程的颠覆
查看>>
Ant Design源码分析(三):Wave组件
查看>>
91. Decode Ways
查看>>