#include <iostream>
#include <regex>
#include <sstream>
#include <string>
#include <vector>
using namespace std;

int main() {
	string item{"text1,tex2,blah,"};
	regex re{"((?:[^\\\\,]|\\\\.)*?)(?:,|$)"};
	vector<string> m_vecFields{sregex_token_iterator(item.begin(), item.end(), re, 1), sregex_token_iterator()};
	
	for(const auto& i : m_vecFields) cout << "- " << i << endl;
	return 0;
}