gpt4 book ai didi

c++ - 使用 2 个分隔符 '+' 和 '-"在 C++ 中拆分字符串

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:02:17 29 4
gpt4 key购买 nike

我正在尝试在 C++ 中使用 2 个分隔符“+”和“-”拆分字符串使用字符串查找定界符...

谁能帮我解决一下...

使用

str.find(delimiter)

例子:

a+b-c+d

需要输出:一种bC

提前致谢

最佳答案

使用 std::string::substrstd::string::find

    std::vector<std::string> v ; //Use vector to add the words

std::size_t prev_pos = 0, pos;
while ((pos = str.find_first_of("+-", prev_pos)) != std::string::npos)
{
if (pos > prev_pos)
v.push_back(str.substr(prev_pos, pos-prev_pos));
prev_pos= pos+1;
}
if (prev_pos< str.length())
v.push_back(str.substr(prev_pos, std::string::npos));

或者如果你使用boost 会容易很多

#include <boost/algorithm/string.hpp>

std::vector<std::string> v;
boost::split(v, line, boost::is_any_of("+-"));

关于c++ - 使用 2 个分隔符 '+' 和 '-"在 C++ 中拆分字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19202520/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com