J'ai un scénario où je lis un fichier CSV ligne par ligne. Un exemple courant de ligne est
"name,description,str,"['A', 'B', 'C']","
J'ai besoin de diviser la ligne en un tableau avec un séparateur de virgule, mais pas quand il existe à l'intérieur de '[]'.
Sortie attendue dans le tableau:
name
description
str
['A', 'B', 'C']
Remarque: la dernière valeur de la ligne d'entrée fournie est vide. C'est pourquoi il y a, et aucun texte à la suite
J'ai essayé de suivre la solution publiée ici mais cela n'a pas fonctionné pour moi
Cela fonctionne bien dans votre cas.
var str = "name,description,str,['A', 'B', 'C'],";
var matches = str.match(/\[.*\]/g);
var arr = str.replace(/\[.*\]/g,'SomeRandomText').split(',');
for(var i = 0; i < arr.length; i++){
arr[arr.indexOf('SomeRandomText')] = matches.shift();
}
console.log(arr);
Cet article est collecté sur Internet, veuillez indiquer la source lors de la réimpression.
En cas d'infraction, veuillez [email protected] Supprimer.
laisse moi dire quelques mots