我正在基于定界符"/"
将字符串拆分为较小的段。
stringstream ss(stringToSplit);
string item;
vector<std::string> splitStrings;
while (std::getline(ss, item, delimiter))
{
splitStrings.push_back(item);
}
一些字符串看起来像这样:
home/user/folder
/home/user/folder
banana/grape/onion
/banana/grape/onion
我遇到的问题是,前面带有定界符"/"
的字符串在所得向量的开头创建了一个空项目。有没有办法避免这种情况或删除空项目?
我尝试删除向量中的所有" "
字符串,但它们仍然保留。
答案 0 :(得分:0)
好吧,您可以像这样跳过getline()
检测到的空字符串:
stringstream ss(stringToSplit);
string item;
vector<std::string> splitStrings;
while (std::getline(ss, item, delimiter))
{
if(!item.empty()) { // <<<<<<<<<<<<<
splitStrings.push_back(item);
}
}