【发布时间】:2015-02-17 09:20:46
【问题描述】:
我知道有很多主题都存在像我这样的问题,但我找不到特别适合我的问题的正确答案。
我想通过倍数分隔符(' '、'\n'、'('、')')将我的字符串拆分为标记并将所有内容保存在我的向量中(甚至是分隔符)。
这是我制作的第一个代码,它实际上只占用所有行,但现在我想将它与其他分隔符分开。
std::vector<std::string> Lexer::getToken(std::string flow)
{
std::string token;
std::vector<std::string> tokens;
std::stringstream f;
f << flow;
while (std::getline(f, token, '\n'))
{
tokens.push_back(token);
}
return (tokens);
}
例如,如果我有:
push int32(42)
我想要以下代币:
push
int32
(
42
)
【问题讨论】:
-
但是您没有保存分隔符,它不在您添加到容器中的
token中? -
@Nim :目前没有,但我也想保存它们。
-
自己滚没意义,别人已经辛苦了! stackoverflow.com/questions/22331648/…
标签: c++ string vector split delimiter