JSFiddle - React, Tailwind, and code Playground

by Ranganadh Paramkusam

JavaScript

var str = '1,"name1 "", name2",values(1,2,3,4), 1, "dfjgjs "", sdf",values(1,2,3,4,5,6), 4, "dsg "", sdf", values(1,2,3,4,56,6)';
function getCSVArray(csv){
	var quoted_val = csv.match(/".*?"",.*?"/g)
	var quotes_hid = csv.replace(/".*?"",.*?"/g,'QUOTED_STRING')
	var saved_values  = quotes_hid.match(/\(.*?\)/g)
	var desired_string = quotes_hid.replace(/\(.*?\)/g,'CSV_VALUES')
	
	var new_arr = [];
	var desired_array = desired_string.split(',');
	desired_array.forEach(function(elem,index){
		if(elem.match('QUOTED_STRING')){
			elem = elem.replace('QUOTED_STRING',quoted_val[0]);
            quoted_val = quoted_val.slice(1);
		} else if(elem.match('CSV_VALUES')){
			elem = elem.replace('CSV_VALUES',saved_values[0]);
            saved_values = saved_values.slice(1);
		}
		new_arr.push(elem)
	});
	return new_arr;
}
document.write(getCSVArray(str).join('<br />'));