首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

BCB字符串替换解决方法

2012-03-22 
BCB字符串替换假设我有两个字符串;AnsiString a ab123cdef|123something123 , AnsiString b 456

BCB字符串替换
假设我有两个字符串;AnsiString a = "ab123cdef|123something123" , AnsiString b = "456";
我想把"|"后面的第一个"123"或者最后一个"123"替换成b,我该怎么做啊?谢谢了。。。
StringReplace()好像不行,正则表达式不会。。。

[解决办法]

C/C++ code
void __fastcall TForm1::Button1Click(TObject *Sender){AnsiString a = "ab123cdef|123something123" ; AnsiString b = "456";int t =   a.Pos("|123")+1;a.Delete(t,3);a.Insert(b,t);ShowMessage(a);}
[解决办法]
C/C++ code
void __fastcall TForm1::Button1Click(TObject *Sender)//借用下zzbinfo的代码{AnsiString a = "ab123cdef|123something123" ; AnsiString b = "456";int t =   a.Pos("|");//判断第|位置a.Delete(t+n,m);//n标识|后面第几个,需要删除的长度a.Insert(b,t);//b里面存放需要代替的字符串ShowMessage(a);}
[解决办法]
用Pos先返回'|'的位置len;
假如你输入的数是n,那么Pos就是len+n,先是delete这截数据,再插入即可。

热点排行