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
    在这里插入图片描述
    //当然还有其他很多 这些只是常用的
  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值