c++ - 将字符串拆分为向量
问题描述
例如,任何不同于a b c..x y z
orA B C..X Y Z
的字符-
都需要分隔并放入向量中。
我怎样才能做到这一点?
std::string inputLine;
vector<string> inputs;
getline(std::cin, inputLine);
此时我从用户输入中获得了字符串,我该如何拆分它?
例如:hello,sir my nameéis ada-m应该放在一个向量中,如下所示
输入.at(0):你好
input.at(1): 先生
input.at(2): 我的
input.at(3): 名称
输入.at(4): 是
输入.at(5): ada-m
解决方案
这是一个简单的算法
- 创建一个空的字符串向量
inputs
- 创建一个空字符串
s
- 遍历
c
输入字符串的每个字符inputLine
- 如果
c
在'a' 'b' 'c'..'x' 'y' 'z'
或'A' 'B' 'C'..'X' 'Y' 'Z'
或'-'
- 附加
c
到s
- 附加
- 别的
- 附加
s
到inputs
(您也可以检查是否s
为空) - 清除
s
- 附加
- 如果
- 将最后一个字符串附加
s
到inputs
(您也可以检查是否s
为空)
推荐阅读
- javascript - 如何以功能性 javascript 样式处理副作用
- pandas - 分为三类 Pandas Dataframe
- java - 我们可以验证不完整的 DTO 属性吗?
- react-hooks - 无法访问使用的状态
在我的代码中,我有一个像这样
const [files, setFiles] = React.useState<IDocumentInfo[]>([]);
钩子创建的状态数组,然后在网格中<AgGridReact rowData={files} columnDefs={colDefs} ....
其中一列名为“
- azure - Rest API 数据工厂的分页错误无效令牌
- python - So I'm making a program that repeats a greeting to the user as many times they want, but when they want to continue it doesnt show that code
- c++ - 模拟 kCGEventOtherMouseDown 仅适用于右键单击
- dataframe - Pyspark:输入不匹配......期待EOF
- distributed-computing - ACID 事务的存在是否使 CAP 定理无效?
- r - 在 R 中使用 ggplot2 复制图形