在Javascript中将字符串解析为命令行输入

在Javascript中将字符串解析为命令行输入,javascript,parsing,Javascript,Parsing,我需要这个字符串解析的帮助。 我想做的是使用Javascript解析像这样的字符串 "myname" secondarg "third argument" andso on 给我一个这样的结果 [0] => myname [1] => secondarg [2] => third argument [3] => andso [4] => on 编辑: 到 这是相当不错的,但它不处理转义引号等。有一个完整的解决方案是相当复杂的,就像解析CSV一样复杂 如何消除输出

我需要这个字符串解析的帮助。 我想做的是使用Javascript解析像这样的字符串

"myname" secondarg "third argument" andso on
给我一个这样的结果

[0] => myname
[1] => secondarg
[2] => third argument
[3] => andso
[4] => on
编辑:

这是相当不错的,但它不处理转义引号等。有一个完整的解决方案是相当复杂的,就像解析CSV一样复杂


如何消除输出上多余的前导和尾随双引号?也许以后可以使用字符串替换
。为数组的每个元素替换(/“/g,”)
"test" " foo" bar "hello world" " hello "
[0] => 'test'
[1] => ' foo'
[2] => 'bar'
[3] => 'hello world'
[4] => ' hello '
function argsFrom(string) {
    return string.match(/'[^']*'|"[^"]*"|\S+/g) || [];
}