javascript – 用’,’分割句子,并删除周围的空格

前端之家收集整理的这篇文章主要介绍了javascript – 用’,’分割句子,并删除周围的空格前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有这个代码: @H_404_2@var r = /(?:^\s*([^\s]*)\s*)(?:,\s*([^\s]*)\s*){0,}$/ var s = " a,b,c " var m = s.match(r) m => [" a,c ","a","c"]

看起来整个字符串已经匹配,但是哪里有“b”了?我宁愿得到:

@H_404_2@[" a,"b","c"]

所以我可以用s.split(‘,’)的结果做m.shift(),也可以删除空格.

我在正则表达式中有错误,还是误解String.prototype.match?

解决方法@H_301_14@
这是一个很简单&直接的方式来做到这一点,而不需要复杂的正则表达式. @H_404_2@var str = " a,c " var arr = str.split(",").map(function(item) { return item.trim(); }); //arr = ["a","c"]

IE9及以上版本支持nativemap.https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map

或者在ES6 / TypeScript中,它变得更短:

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

猜你在找的JavaScript相关文章