(在寻找怎样记录方式更好,就可能格式什么的都会不太一样)
string: 用于存放字符串
-
string访问:
与数组类似用下标进行访问(要输出整个字符串,只能用cin和cout,也可以用printf进行输出,只是要进行str.c_str()的转化,转为字符数组进行输出)
迭代器进行访问(迭代器定义:string::iterator it ;之后可以用*it进行string中的每个字符的访问),且string与vector 类似可以用迭代器加减某个数字,例如str.begin()+3 -
常用函数:
+=:把两个string直接拼接起来,例如str1+=str2,也就是把str2拼接到str1
== , != ,< . <= , > ,>=:进行按照字典序比较
length()/size( ) :返回存放的字符数
insert(pos,string): 现在pos位置插入字符串string
insert(it,it2,it3) : 把由it2,it3表示首尾迭代的字符串(左闭右开)插入迭代器it的位置
erase(it):删除单个元素,it为要删除的迭代器,it的位置是数组下标,
str.erase(first,last),last为要删除的末尾迭代器的下一个地址,左闭右开
str.erase(pos,length),pos为要开始的位置,length为删除的字符个数
clear():删除string中的元素
substr(pos,len):返回从pos位开始,长度为len的子串
string::npos:find函数失败匹配的值
str.find(str2):返回在str中出现第一次的位置,没有的话返回string::npos
str(str2,pos):从str的pos位开始匹配str2
str.replace(pos,len,str2)把str的pos位开始长度为len 的子串替换成str2
str.replace(it1,it2,it3)把迭代器[it1,it2)范围的子串替换成str2