• string类的常用方法


    string类是C++中一个非常常用的类,它提供了许多方法来操作字符串。以下是一些常用的string类方法:

    1. 构造函数:
    • string(): 创建一个空的字符串。
      • string(const char* str): 用一个C风格字符串来初始化一个新的字符串。
      • string(size_t n, char c): 创建一个由n个字符c组成的字符串。
    1. 赋值操作:
    • operator=(const char* str): 将C风格字符串赋值给字符串。
      • operator=(const string& other): 复制另一个字符串。
    1. 字符串连接:
    • append(const char* str): 连接一个C风格字符串到当前字符串的末尾。
      • append(size_t n, char c): 连接n个字符c到当前字符串的末尾。
      • += (const char* str): 连接一个C风格字符串到当前字符串的末尾。
    1. 字符串分割:
    • split(const char* delim): 根据给定的分隔符将字符串分割为子串,并返回一个包含这些子串的vector。
    1. 字符串查找:
    • find(const char* str, size_t pos = 0): 在当前字符串中搜索给定的子串,并返回第一次出现的位置(从0开始)。如果未找到,返回string::npos
      • rfind(const char* str, size_t pos = npos): 在当前字符串中向后搜索给定的子串,并返回最后一次出现的位置(从0开始)。如果未找到,返回string::npos
    1. 字符串替换:
    • replace(size_t pos, size_t len, const char* str): 在当前字符串中,从pos开始替换len个字符为给定的C风格字符串。
    1. 字符串比较:
    • compare(const char* str) const: 比较当前字符串与给定的C风格字符串。如果相等返回0,小于返回负数,大于返回正数。
      • operator==(const char* str, const string& other): 检查两个字符串是否相等。
      • operator!=(const char* str, const string& other): 检查两个字符串是否不相等。
    1. 字符串截取:
    • substr(size_t pos, size_t len = npos) const: 返回一个新的字符串,它是当前字符串从pos开始的len个字符。如果未指定len,那么将返回从pos到当前字符串末尾的所有字符。
    1. 字符串遍历:

    * begin() const: 返回一个指向当前字符串第一个字符的迭代器。

    * end() const: 返回一个指向当前字符串末尾的迭代器。

    1. 其他方法:
    • clear(): 清空当前字符串。
      • reserve(size_t n): 改变当前字符串的容量(保留的空间)。如果n比原来的容量小,此函数不会做任何事。如果n比原来的容量大,此函数将添加新的空闲空间。
      • capacity() const: 返回当前字符串的容量(保留的空间)。
      • empty() const: 如果字符串为空,则返回true,否则返回false。

    除了上述提到的方法,string类还有很多其他常用的方法,例如:

    1. 插入字符:
    • insert(size_t pos, const char* str): 在当前字符串的指定位置插入给定的C风格字符串。
    1. 删除字符:
    • erase(size_t pos, size_t len = npos): 从当前字符串的指定位置删除len个字符。如果未指定len,那么将删除从pos到字符串末尾的所有字符。
    1. 替换字符:
    • replace(size_t pos, size_t len, char c): 用给定的字符c替换当前字符串中从pos开始的len个字符。
    1. 查找第一个/最后一个字符的位置:
    • find_first_of(const char* str, size_t pos = 0): 返回第一个匹配给定字符串中任何一个字符的位置。
      • find_last_of(const char* str, size_t pos = npos): 返回最后一个匹配给定字符串中任何一个字符的位置。
    1. 替换子串为其他子串:
    • replace(size_t pos, size_t len, const char* str, size_t strPos, size_t strLen): 用给定子串替换当前字符串中从pos开始的len个字符,成为新的子串。
    1. 反转字符串:
    • swap(string& other): 与另一个字符串交换内容。
    1. 字符串转换为大写/小写:
    • make_lower(): 将当前字符串的所有字符转换为小写。
      • make_upper(): 将当前字符串的所有字符转换为大写。
    1. 字符计数:
    • count(const char* str, size_t pos = 0) const: 返回从pos开始匹配给定字符串的次数。
    1. 查找子串并返回其长度:

    * find_first_not_of(const char* str, size_t pos = 0) const: 返回第一个不匹配给定字符串中任何一个字符的位置,并返回其长度。

    1. 其他实用函数:
    • copy(char* buf, size_t n, size_t pos = 0) const: 将当前字符串的前n个字符复制到给定的字符数组buf中。
      • compare(const char* str) const: 比较当前字符串与给定的C风格字符串。如果相等返回0,小于返回负数,大于返回正数。
      • substr(size_t pos, size_t len = npos) const: 返回一个新的字符串,它是当前字符串从pos开始的len个字符。如果未指定len,那么将返回从pos到当前字符串末尾的所有字符。
  • 相关阅读:
    IDA pro逆向工具寻找socket server的IP和port
    Rebex Total Pack 6.0 for .Net Crack
    模拟电路 第二章(三极管及其放大电路)【上】
    开坑:关于MATLAB 使用CNN进行图像分类时,训练输出的验证集精度会陡降的问题
    Linux服务器上搭建JupyterNotebook教程
    第六章 数据流建模
    浅谈webpack
    2024.06.11校招 实习 内推 面经
    Java 中常用的进制转换
    【限定词习题】enough/too + 不定式
  • 原文地址:https://blog.csdn.net/luxiaol/article/details/134506110