我们说我有一个字符串"file1\nfile2\nfile3".
我想打印出来:
file1
file2
file3
如何在不使用字符串流的情况下执行此操作?
注意:当我说string时,我指的是C ++中的字符串对象。
对不起,如果这是一个愚蠢的问题;我是C ++的新手;
答案 0 :(得分:0)
以下内容应该有效并允许您指定multichar delim:
void split_and_print(const std::string & data, const std::string & delim =std::string{"\n"}){
if (!delim.length()){
std::cout<<data<<std::endl;
return;
}
auto last = data.begin();
auto found = last;
while (found != data.end()){
found = std::search(last, data.end(), delim.begin(), delim.end());
std::cout<<std::string(last, found)std::endl;
last = found + delim.length();
}
}