欢迎访问宙启技术站
智能推送

使用substr截取字符串;

发布时间:2023-07-01 00:07:58

使用substr函数可以截取字符串中指定的子字符串。

substr函数的基本语法为:

substr(原字符串, 起始位置, 长度)

其中,原字符串是要进行截取的字符串;起始位置是指从哪个索引开始截取字符串(索引从0开始计数);长度是指要截取的子字符串的长度。

下面是一个示例,演示如何使用substr函数截取字符串中的子字符串:

#include <iostream>
#include <string>
using namespace std;

int main() {
    string str = "Hello, World!";
    string sub = str.substr(7, 5);  // 从索引7开始截取长度为5的字符串
    cout << "截取的子字符串是:" << sub << endl;
    return 0;
}

输出结果为:

截取的子字符串是:World

在上面的示例中,原字符串是"Hello, World!",起始位置是7,长度是5,因此截取的子字符串就是"World"。

需要注意的是,substr函数的第二个参数起始位置是从0开始计数的,而不是从1开始计数的。

另外,当指定的起始位置超过了原字符串的长度,或者指定的长度超过了剩余字符串的长度时,substr函数也能正确处理,它会返回原字符串中剩余的部分。例如:

string str = "Hello, World!";
string sub1 = str.substr(7, 20);  // 从索引7开始截取长度为20的字符串
string sub2 = str.substr(15);     // 从索引15开始截取到字符串的末尾

在上面的例子中,sub1的值是"World!",因为从索引7开始到字符串末尾的长度不足20,所以只截取剩余的部分;sub2的值是"!",因为从索引15开始到字符串末尾只有一个字符。

希望对你有帮助!