Javascript 如何将复杂字符串拆分为数组?
我有一个用逗号分隔的复杂字符串,它可能包含逗号。如何在跳过内部逗号的情况下将字符串拆分为数组 例如,我有一个字符串:Javascript 如何将复杂字符串拆分为数组?,javascript,arrays,regex,split,Javascript,Arrays,Regex,Split,我有一个用逗号分隔的复杂字符串,它可能包含逗号。如何在跳过内部逗号的情况下将字符串拆分为数组 例如,我有一个字符串: "'test1 test2', 'test3', 123, \"test4\", null, \"test5 , test6 test7\", 'test8, test9','test8,test9' ,'test10 , test11', , , 'test12'" 我想得到数组: ["test1 test2", "test3", 123, "test4", null, ""
"'test1 test2', 'test3', 123, \"test4\", null, \"test5 , test6 test7\", 'test8, test9','test8,test9' ,'test10 , test11', , , 'test12'"
我想得到数组:
["test1 test2", "test3", 123, "test4", null, ""test5 , test6 test7"", "test8, test9", "test8,test9", "test10 , test11", empty × 2, "test12"]
upd:
根据评论,我找到了一个实用的解决方案,谢谢@NinaScholz:
.match(/(["'].*?["']|[^",\s]+)/g);
但是没有空字符串。。。陛下我不确定它是否涵盖了所有可能的情况?split方法用于将字符串拆分为子字符串数组,并返回新数组 var str='test1 test2','test3',123,\test4\,null,\test5,test6 test7\,'test8,test9','test8,test9','test10,test11','test12'; var-res=str.split;
console.logres欢迎使用SO。在这里,我们帮助您编写代码;我们不是为你做这项任务。到目前为止你做了什么?也许是一个受骗的目标:评估它并面对后果。@Utkanos,我被要求做些什么来代替我吗?没有产生预期的结果。