初级C++处理字符串函数总结(一)(2020-9-24)
1、大小与容量
1.size() 和 length():对于字符串返回个数两个函数是等效的。
注:size() 获取容器元素个数,length()相当于strlen()传回字符串长度。
2.empty() 检验字符串字符数是否为空。
2、子串和字符串接合
s.substr(): 复制字符串s;
s.substr(11): 截取从第11位开始到最后;
s.substr(5,6): 截取从第5位开始起的6个字符。
s.substr(5,-1)==s.substr(5).
3、find函数:find(text)
text:
- const string &value: 搜寻字符串;等价于const char* value;
- const string &value, size_type idx:从idx位置搜寻字符串;等价于const char* value, size_type idx;
- const char* value, size_type idx, size_type value_len:从字符串idx位置开始,搜寻条件字符串前len个字符;
- const char value: 搜寻一个字符;
- const char value, size_type idx: 搜寻从idx位置开始后的一个字符;
注:搜索失败返回String::npos,如果带符号整型变量可以判断,返回-1;如果无符号整型将出现语法错误。
4、迭代器
- s.begin()返回一个随机迭代数,指向第一个字符;
- s.end()返回一个随机迭代数,指向最后一个字符;
- reverse(A1, A2)其中A1:随机迭代数beg,A2:随机迭代数end,将区间[beg, end]内元素全部逆序,无返回值。
Ex.reverse(s.begin(), s.end())
5、输入输出(2020-9-25)
1、字符串类:
- 运算符重载 operate >>和 operate << (流对象cin和cout)其中cin读入需要空格和换行会读取终止。但是不会读入空格和换行符。
- istream& getline (istream& strm,string& str)
- istream& getline (istream& strm,string& str,char delim)其中读入换行或者终止符会终止,空格和换行会被读入。
2、一般输入输出:
- get(s,num) 不包括new line或EOF
- get(s,num,t) 不包括t或EOF
- getling(s,num) 包括new line或EOF
- getline(s,num,t) 包括t或EOF