编写cpp代码,根据字符串中的数字分割字符串
时间: 2024-12-17 21:46:45 浏览: 1
C语言中计算字符串长度与分割字符串的方法
在C++中,你可以使用`std::stringstream`和`std::getline`函数结合来分割字符串,特别是当字符串中有嵌套的数字。下面是一个简单的示例,它会找到并提取出字符串中的连续数字字符,并将它们存储到vector中:
```cpp
#include <iostream>
#include <sstream>
#include <string>
#include <vector>
std::vector<std::string> splitNumbers(const std::string& input) {
std::vector<std::string> numbers;
std::stringstream ss(input);
std::string number;
while (std::getline(ss, number, '0')) { // 使用'0'作为分隔符,这里可以替换为你想要的其他数字字符
if (!number.empty()) {
numbers.push_back(number);
}
}
return numbers;
}
int main() {
std::string str = "abc123def456ghi789";
std::vector<std::string> result = splitNumbers(str);
for (const auto& num : result) {
std::cout << "Found number: " << num << "\n";
}
return 0;
}
```
在这个例子中,`splitNumbers`函数接收一个字符串作为输入,然后通过逐行读取`ss`流,并在遇到非数字字符时停止,将读取到的数字添加到`numbers` vector中。
阅读全文