一个简单的字符串问题,帮帮小弟吧

xiaozhuhululu 2004-08-31 11:12:48
我现在有一个CString str="aa ssss aaa dsl def"这样一个字符串,各部分以空格分割,我怎么把他们一个一个识别出来,放到另一个字符串里啊?谢谢各位了!!
...全文
166 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
yangki 2004-08-31
  • 打赏
  • 举报
回复
CString resToken;
int curPos= 0;
resToken= str.Tokenize(_T(" "),curPos);
while (resToken != _T(""))
{
//你的操作
resToken= str.Tokenize(_T("%"),curPos);
}
888atao 2004-08-31
  • 打赏
  • 举报
回复
void SplitString(CString str, CString split, CStringArray &arr)
{
arr.RemoveAll();
if (split == "")
{
arr.Add(str);
return;
}

int pos = 0;
while(true)
{
if ((pos = str.Find(split)) != -1)
{
CString tmp = str.Left(pos);
str = str.Right(str.GetLength()-(pos+split.GetLength()));
arr.Add(tmp);
}
else
{
arr.Add(str);
break;
}
}
return;
}

调用方法
CString str="aa ssss aaa dsl def"
CStringArray arr;
SplitString(str, " ", arr); //第二个参数表示用空格分隔
结果就在arr里面了
athena521 2004-08-31
  • 打赏
  • 举报
回复
CString str="aa ssss aaa dsl def";
CString str1,str2;
str2 = str;
while(1)
{
if(str2.Find(" ") == -1)
{
str1 = str2;
break;
}
str1 = str2.Mid(0,str2.Find(" "));
str2 = str2.Mid(str2.Find(" ")+1);
}
str1依次取出字符串
duff 2004-08-31
  • 打赏
  • 举报
回复
strtok
  • 打赏
  • 举报
回复
技术上可行
符合你的要求吗?
如果不明白
请给我发短消息
请附: 帖子的地址
或根据http://www.vcshare.net上的联系方式与我联系
  • 打赏
  • 举报
回复
CString str="aa ssss aaa dsl def";
char szch[5][10];
sscanf(str,"%s %s %s %s %s",szch,szch+1,szch+2,szch+3,szch+4);
二十八画杰 2004-08-31
  • 打赏
  • 举报
回复
char ch = " "; 里面有个空格
int index;
index = str.Find(ch,0);
CString findStr = str.Mid(0,index);
findStr 就得到了你要的第一个字符串 ,其后面的类似。
Kudeet 2004-08-31
  • 打赏
  • 举报
回复
#include <string.h>
#include <stdio.h>

char string[] = "A string\tof ,,tokens\nand some more tokens";
char seps[] = " ,\t\n";
char *token;

void main( void )
{
printf( "%s\n\nTokens:\n", string );
/* Establish string and get the first token: */
token = strtok( string, seps );
while( token != NULL )
{
/* While there are tokens in "string" */
printf( " %s\n", token );
/* Get next token: */
token = strtok( NULL, seps );
}
}


Output

A string of ,,tokens
and some more tokens

Tokens:
A
string
of
tokens
and
some
more
tokens
strtok可以自己指定分隔符(不管是,空格或其他),代码也比较简洁,具体可以参考MSDN上的说明
Kudeet 2004-08-31
  • 打赏
  • 举报
回复
int index=str.Find();
CString str1=str.Mid(n,n);

主要的函数

16,472

社区成员

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

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

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