my @parts = split /((?:\"(?:\\\"|(?!\").)*\"|\'(?:\\\'|(?!\').)*\'))/, $line; dd\@parts;