b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

c strcpy用法_c strchr函数用法_indexofstring c 实现(4)

电脑杂谈  发布时间:2017-02-28 02:04:31  来源:网络整理

Hello Word

前面的符号和后面的符号都没有了。像这种用法可以用来查找分隔符,从而把一个连续的字符串分割成为几部分,达到 shell 命令中的 awk 的用法。特别是当分隔符有多个的时候,可以一次指定。例如有这样的需求:

张三|3456123, 湖南

李四,4564234| 湖北

王小二, 4433253|北京

...

我们需要以 "|" ","为分隔符,同时又要过滤空格,把每行分成相应的字段。可以作为你的一个家庭作业来试试,要求代码简洁。

1.3 string insert, replace, erase

了解了string 的操作符,查找函数和substr,其实就已经了解了string的80%的操作了。insert函数, replace函数和erase函数在使用起来相对简单。下面以一个例子来说明其应用。

string只是提供了按照位置和区间的replace函数,而不能用一个string字串来替换指定string中的另一个字串。这里写一个函数来实现这个功能:

void string_replace(string & strBig, const string & strsrc, const string &strdst) {

string::size_type pos=0;

string::size_type srclen=strsrc.size();

string::size_type dstlen=strdst.size();

while( (pos=strBig.find(strsrc, pos)) != string::npos){

strBig.replace(pos, srclen, strdst);

pos += dstlen;

}

}看看如何调用:

#i nclude <string>

#i nclude <iostream>

using namespace std;

int main() {

string strinfo="This is Winter, Winter is a programmer. Do you know Winter?";

cout<<"Orign string is :/n"<<strinfo<<endl;

string_replace(strinfo, "Winter", "wende");

cout<<"After replace Winter with wende, the string is :/n"<<strinfo<<endl;

return 0;

}其输出结果:

Orign string is :

This is Winter, Winter is a programmer. Do you know Winter?

After replace Winter with wende, the string is :

This is wende, wende is a programmer. Do you know wende?如果不用replace函数,则可以使用erase和insert来替换,也能实现string_replace函数的功能:

void string_replace(string & strBig, const string & strsrc, const string &strdst) {

string::size_type pos=0;


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-34906-4.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    每日福利
    热点图片
    拼命载入中...