std::string::substr()函数是C++标准库中std::string类的成员函数,用于提取子字符串。该函数返回一个新的字符串,该字符串是从当前字符串中的指定位置开始的指定长度的子字符串。如果未指定长度,则返回从指定位置到字符串末尾的所有字符。

函数原型如下:

std::string substr (size_t pos = 0, size_t len = npos) const;

参数说明:

  • pos:要提取的子字符串的起始位置。如果该值大于等于字符串的长度,则返回空字符串。
  • len:要提取的子字符串的长度。如果该值大于从起始位置到字符串末尾的字符数,则返回从起始位置到字符串末尾的所有字符。

示例:

#include <iostream>
#include <string>

int main() {
    std::string str = "Hello, world!";
    std::string sub1 = str.substr(0, 5); // sub1 = "Hello"
    std::string sub2 = str.substr(7); // sub2 = "world!"
    std::cout << sub1 << std::endl;
    std::cout << sub2 << std::endl;
    return 0;
}

输出:

Hello
world!

注意,substr()函数返回的是一个新的std::string对象,而不是原字符串的子串。如果需要修改原字符串的子串,可以使用std::string::replace()函数。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐