C++ MFC中 截取特定字符串
比如一串字符串01000088020000880300008804000088截取88前的字符串变成010000,020000..........
比如一串字符串 01 00 00 88 02 00 00 88 03 00 00 88 04 00 00 88
截取88前的字符串 变成 01 00 00 ,02 00 00 ....... 展开
截取88前的字符串 变成 01 00 00 ,02 00 00 ....... 展开
3个回答
展开全部
//#include "stdafx.h"//vc++6.0加上这一行.
#include <iostream>
#include <string>
using namespace std;
int main(void){
string stra("01 00 00 88 02 00 00 88 03 00 00 88 04 00 00 88"),strb;
for(int ln=stra.length(),i=0;i<ln;i++)
if(stra[i]!='8' || stra[i+1]!='8')
strb+=stra[i];
else{
strb+=',';
i++;
}
cout << strb << endl;
return 0;
}
#include <iostream>
#include <string>
using namespace std;
int main(void){
string stra("01 00 00 88 02 00 00 88 03 00 00 88 04 00 00 88"),strb;
for(int ln=stra.length(),i=0;i<ln;i++)
if(stra[i]!='8' || stra[i+1]!='8')
strb+=stra[i];
else{
strb+=',';
i++;
}
cout << strb << endl;
return 0;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用Find 得到index
根据index 用substring(好像是mid打头的函数)
根据index 用substring(好像是mid打头的函数)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <iostream>
#include <string>
using namespace std;
int main(void)
{
string name("01 00 00 88 02 00 00 88 03 00 00 88 04 00 00 88");
int startpos = 0;
while (-1!= startpos )
{
startpos = name.find('88'); //找到'88'的位置
if( startpos != -1 )
{
name.replace(startpos,2,",");
}
}
cout << name << endl;
system("pause");
return 0;
}
#include <string>
using namespace std;
int main(void)
{
string name("01 00 00 88 02 00 00 88 03 00 00 88 04 00 00 88");
int startpos = 0;
while (-1!= startpos )
{
startpos = name.find('88'); //找到'88'的位置
if( startpos != -1 )
{
name.replace(startpos,2,",");
}
}
cout << name << endl;
system("pause");
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询