Regex++でCSVデータをタブ区切りに変換

結果は標準出力ストリームへ

	const char* srcfile = "test.csv";
	FILE* f = fopen( srcfile, "r" );
	if( NULL == f ) {
		return -1;
	}

	boost::basic_regex<char> regex = "(.*?),(.*?),(.*?)";
	boost::match_results<const char*> results;

	char src[1024];
	while( fgets(src, sizeof src, f) != NULL ) {
		boost::regex_search(src, results, regex);

		char buf[1024];
		for( int i = 1 ; i <= 3 ; i++ ) {
			::memset( buf, '\0', sizeof buf );
			::strncpy( buf, results.str(i).c_str(), results.length(i) );
			::printf( "%s\t", buf );
		}
		::printf( "\n" );
	}

	fclose(f);