其他分享
首页 > 其他分享> > string的常用方法(详细)

string的常用方法(详细)

作者:互联网

string容器
c++在STL中加入了string类型,对字符串常用的功能进行了封装,使操作起来更方便,不必担心内存是否足够、字符串的长度等问题。
用string的时候需要:
1.#include
2.using namespace std
定义string的方法:
string name;
//name是字符串变量的名字
可以在定义字符串的同时进行初始化
例如:string str=“abcd”;
1.string的访问:
(1)像普通数组一样操作
在这里插入图片描述
若整体输入输出
在这里插入图片描述
(2)通过迭代器访问
迭代器定义方法:
string::iterator it;
在这里插入图片描述
2.string的运算
加法运算:加法运算时,左右操作数必须要有一个string类型
在这里插入图片描述
关系运算:按照字典序比较
在这里插入图片描述
3.string常用函数
(1).length() .size()
返回字符串的长度,时间复杂度o(1)
(2).clear()
清空所有元素 时间复杂度o(1)
在这里插入图片描述
(3).substr() substr(pos,len) 返回从pos号位置开始,长度为len的子串 时间复杂度为o(n)
在这里插入图片描述
(4).insert() 时间复杂度为o(n)

  1. insert(pos,string) 在pos号位置插入字符串string
    在这里插入图片描述
  2. insert(it1,it2,it3) it1为原字符串欲插入位置,it2,it3为待插入字符串首尾迭代器(左闭右开区间)
    在这里插入图片描述
    (5).erase() 时间复杂度 o(n)
    erase(it) 删除it处的元素 it为欲删除位置的迭代器
    在这里插入图片描述
    erase(first,last) 删除first 到 last区间的元素 first last [first,last)
    在这里插入图片描述
    erase(pos,length) 删除从pos号开始,length个元素
    在这里插入图片描述
    (6).find() 时间复杂度o(n*m)
    函数返回要查询的串在母串中第一次出现的位置,若母串中没有查询到子串,返回string::npos 其本身值为-1,也可以认为是unsigned int的最大值 4294967295
    在这里插入图片描述
    在这里插入图片描述
    (7).replace()
  3. s1.replace(pos,len,s2)把s1从pos位置开始长为len的子串替换为s2
    在这里插入图片描述
  4. s1.replace(it1,it2,s2) 把s1的迭代器it1,it2范围内(左闭右开)的子串替换为s2
    在这里插入图片描述
    //当然还有其他很多 这些只是常用的

标签:常用,string,迭代,复杂度,pos,详细,字符串,it2
来源: https://blog.csdn.net/Gragon_sgirlfriend/article/details/96001858