我有一个像这样的字符串:
"foo", "bar", "baz"
我想用正则表达式得到单个字符串;
["foo", "bar", "baz"]
这是我的代码:
var re = new RegExp('"(?:[^"])*"', 'g');
var match = re.exec('"foo", "bar", "baz"');
console.log(match);
但不检查分隔符,
并仅返回foo
...
答案 0 :(得分:0)
您可以选择将split(/,\s+/)
和replace()
用于该输出:
var str = '"foo", "bar", "baz"';
var res = str.split(/,\s+/).map(item=>item.replace(/"/g, ''));
console.log(res);
答案 1 :(得分:0)
您可以添加方括号并解析JSON。
var string = '"foo", "bar", "baz"',
array = JSON.parse('[' + string + ']');
console.log(array);
答案 2 :(得分:0)
这是一种解决方案,它可以删除前导/后缀引号并在定界符上进行分割:
const s = '"foo", "bar", "baz"';
console.log(s.slice(1, s.length-1).split('", "'));