gpt4 book ai didi

javascript - 按 ',' 拆分句子并删除周围的空格

转载 作者:IT王子 更新时间:2023-10-29 02:54:24 25 4
gpt4 key购买 nike

我有这个代码:

var r = /(?:^\s*([^\s]*)\s*)(?:,\s*([^\s]*)\s*){0,}$/
var s = " a , b , c "
var m = s.match(r)
m => [" a , b , c ", "a", "c"]

看起来整个字符串都匹配了,但是"b"到哪里去了?我宁愿期望得到:

["   a   ,  b  , c ", "a", "b", "c"]

这样我就可以执行 m.shift(),得到类似 s.split(',') 的结果,但也删除了空格。

我的正则表达式有误还是我误解了 String.prototype.match

最佳答案

这是一种非常简单直接的方法,无需复杂的正则表达式。

var str = "   a   ,  b  , c "
var arr = str.split(",").map(function(item) {
return item.trim();
});
//arr = ["a", "b", "c"]

原生 .map 在 IE9 及更高版本上受支持:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map


或者在 ES6+ 中它变得更短:

var arr = str.split(",").map(item => item.trim());

为了完成,这里是带有打字信息的 Typescript

var arr: string[] = str.split(",").map((item: string) => item.trim());

关于javascript - 按 ',' 拆分句子并删除周围的空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7695997/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com