c++有一个string类型的字符串,例如“202211 张飞77 88”,我如何将77单独取出来
时间: 2024-02-25 20:59:20 浏览: 49
详解C++ string常用截取字符串方法
如果你想要取出字符串中所有的 "77",你可以使用 string 类型的 find() 和 substr() 函数结合起来实现。具体地,你可以使用一个 while 循环,每次查找 "77",并将其取出,然后将查找的起点设置为当前位置的下一个位置,直到字符串中不再存在 "77" 为止。
下面是示例代码:
```
#include <iostream>
#include <string>
using namespace std;
int main() {
string str = "202211 张飞77 88";
size_t pos = 0;
while ((pos = str.find("77", pos)) != string::npos) {
string sub_str = str.substr(pos, 2);
cout << sub_str << endl; // 输出 "77"
pos += 2; // 将查找的起点设置为当前位置的下一个位置
}
return 0;
}
```
在上述代码中,find() 函数返回的是 "77" 在字符串中的位置,如果找不到,则返回 string::npos,表示未找到。在 while 循环中,每次查找 "77" 后,将查找的起点设置为当前位置的下一个位置,这样就可以一次取出所有的 "77"。
阅读全文