Разбить строку на два разделителя? - PullRequest
0 голосов
/ 18 октября 2018

Я хочу разбить строку на основе разделителей " " и "," (включая кавычки).Как я смогу сделать это?Я пытался сделать это:

var str = '"String","String2" "String3"';
str = str.split('" "', '","');
console.log(str);

Но это не сработало.Я ожидал вывод этой консоли:

["String", "String2", "String3"]

Но я получил:

[]

Как мне разбить строку на основе двух разделителей?Возможно ли это?

Ответы [ 4 ]

0 голосов
/ 18 октября 2018

попробуйте решение ниже

var str = '"String","String2" "String3"';

str = str.match(/\w+|"[^"]+"/g)

str = str.map(function(x){return x.replace(/"/g, '');});

console.log('Final str : ', str);
0 голосов
/ 18 октября 2018

Вы можете использовать регулярное выражение: str = str.split(/,| /)

console.log("a,b c".split(/,| /));
0 голосов
/ 18 октября 2018

Вы можете указать регулярное выражение или массив в качестве разделителя https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/split

0 голосов
/ 18 октября 2018

let str = '"String","String2" "String3"';
str = str.split(/ |,/);
console.log(str);

let str2 = '"String","String2" "String3"';
str2 = str2.split(/" "|","|"|\n/).filter(Boolean);
console.log(str2);

let str3 = '"String","String2" "String3"';
str3 = str3.match(/[\w\d]+/g);
console.log(str3);
...