本文将对string相关操作进行汇总

通用例子:string str = “wonker”;

一、字符串长度-str.size(),或str.length()

  二者没有区别,size()是和STL通用algorithms保持一致,length()是兼容C语言strlen()的写法。

 

 

二、查找子串位置-使用find()函数

  find()返回第一次找到子串的下标,返回类型 size_type,也可以直接用int接收。没找到就返回一个特殊标string::npos。

  查找某一给定位置后的子串的位置:str.find(“e”,2)。第二个参数是指定位置的下标。

  所以查找字符串中所有符合要求的字符或子串,可以使用 while((position=str.find(flag,position))!=string::npos)。

  其中,position是查找位置,初始值为0。flag是指定的字符或子串。每次更新查找位置,从前往后查找,找不到的时候就跳出循环。

三、截取子串-str.substr(position, n)

       str.substr(position, n)    截取s中从position开始(包括0)的n个字符的子串,并返回。

       str.substr(position)        截取s中从从position开始(包括0)到末尾的所有字符的子串,并返回。

 

四、替换子串-str.replace(position, n, s1)

         str.replace(position, n, s1)    用s1替换str中从position开始(包括0)的n个字符的子串。

五、 插入删除操作-str.insert(position, s1);str.erase(str.begin()+i, str.end()-j);

  

版权声明:本文为wonker原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/wonker/p/12685047.html