我有以下格式的字符串数据:"Ronit","abc""defgh","abcdef","fdfd",
当逗号不在字符串中时,有人可以在C++中建议一些好的代码来返回以逗号分隔的标记吗?
即它应该返回
更清楚
谢谢大家的帮助.
下面是我的示例文件,作为输入,
第一行会告诉我我有多少列#
1,名称,NAME3,NAME4
"user1","user,user2","user3","userrr
rrr4"
"用户1","用户2","用户3","我们
ER4"
"用户1", "用户2", "用户3", "USER4"
"","user2",","",#
下面是csv文件的输出,请给我编译代码,以便我可以测试,再次感谢您的帮助.
第1行,1)user1,2)user,user2 3)user3 4)userrrr4
注意rr4在下一行.
第2行,1)user1 2)user2 3)user3 4)us er4
注意er4在下一行.
第3行,1)user1 2)用户,2 3)user3 4)user4
第4行1)2)user2 3)4)
小智 17
在C++字符串工具箱库(StrTk)具有以下问题的解决方案:
#include <iostream>
#include <string>
#include <deque>
#include "strtk.hpp"
int main()
{
std::deque<std::string> word_list;
strtk::for_each_line("data.txt",
[&word_list](const std::string& line)
{
const std::string delimiters = "\t\r\n ,,.;:'\""
"!@#$%^&*_-=+`~/\\"
"()[]{}<>";
strtk::parse(line,delimiters,word_list);
});
std::cout << strtk::join(" ",word_list) << std::endl;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
更多例子可以在这里找到