【发布时间】:2014-09-04 10:55:26
【问题描述】:
目标是在空格处拆分字符串,但不拆分引号中的文本数据或将其与相邻文本分开。
输入实际上是一个包含值对列表的字符串。如果值值包含空格,则用引号括起来。我需要一个返回值对元素数组的函数,如下例所示:
示例输入:
'a:0 b:1 moo:"foo bar" c:2'
预期结果:
a:0,b:1,moo:foo bar,c:2(长度为 4 的数组)
我检查了许多其他问题,但没有一个(我发现)似乎能解决我的问题。大多数似乎在引号内的空格处拆分,或者将“moo:”和“foo bar”拆分为单独的部分。
任何帮助将不胜感激, 克雷格
【问题讨论】:
-
只需将上面链接中的逗号替换为空格即可。
-
上面的链接没有达到预期的效果,它是替换而不是拆分。
-
有很多解决方案,但我接受了 Moob 的解决方案,因为它非常适合问题场景,并且实际上通过消除在值周围加上引号的必要性来改善情况,从而增强系统。
标签: javascript regex string split