从CString中提取指定字符

zhuyf87 2013-04-12 01:26:09
CString str = _T("aheifhai123234fhh.31h4h2");
我想提取其中的数字和小数点,也就是结果是str = _T("123234.3142")
请问如何处理比较高效? 谢谢大家。
...全文
413 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
傻X 2013-04-12
  • 打赏
  • 举报
回复
用个指针遍历一遍,判断ASC值在‘0’-‘9’之间。
yaozhiyong110 2013-04-12
  • 打赏
  • 举报
回复
你这个需求是提取 不是找位置 遍历一次是必须的 最快的当然就是遍历完数据也提取出来了...
yaozhiyong110 2013-04-12
  • 打赏
  • 举报
回复
一个for遍历CString 遇到数字或者.就加到另一个CString里 这样遍历一次就得到结果 已经是最快的了
信阳毛尖 2013-04-12
  • 打赏
  • 举报
回复
源字符串没有规律,貌似只能挨个比较了
jimette 2013-04-12
  • 打赏
  • 举报
回复
引用 7 楼 sha_jinhao 的回复:
26次!!!!
错了 忘记remove里面的循环了!
jimette 2013-04-12
  • 打赏
  • 举报
回复
26次!!!!
jimette 2013-04-12
  • 打赏
  • 举报
回复
int CString::Remove( TCHAR ch ); 把字母的移除
sophyyoung 2013-04-12
  • 打赏
  • 举报
回复
说起来还就是一位位比较是最高效的,其他方法,顶多看起来简单(其实要实现起来也不简单),运行起来还更慢呢!
大拙男 2013-04-12
  • 打赏
  • 举报
回复
这个应该没有更简洁的了
_静以修身 2013-04-12
  • 打赏
  • 举报
回复
每一位都是随机的,无规律可循,除了一位一位的比较,还能怎么办?? mark一下 看看有没有good idea
一桶姜山 2013-04-12
  • 打赏
  • 举报
回复
我也只能想到循环判断,看看有没有其他办法
zhuyf87 2013-04-12
  • 打赏
  • 举报
回复
可以for循环一个字符一个字符的判断,有更简洁的办法吗?

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧