关于从json获取的数组值变换的问题

接口获取到一个数组格式是:
"xaxis":["城区一中队","城区二中队","城区三中队","大溪中队","泽国中队","温峤中队","新河中队","箬横中队","城南中队","滨海中队","松门中队","石塘中队"]

我想把它变成["城区\n一中队","城区\n二中队","城区\n三中队","大溪\n中队","泽国\n中队","温峤\n中队","新河\n中队","箬横\n中队","城南\n中队","滨海\n中队","松门\n中队","石塘\n中队"]
请问要怎么实现才好

阅读 2.5k
5 个回答
var arr1 = []
xaxis.forEach(function(item){
    if(item.indexOf('城区')!=-1) {
        arr1.push('城区\n' + item.substr(2,item.length));
    } else {
        arr1.push(item.substr(0,2) + '\n中队');
    }
})
xaxis = xaxis.map(v => `${v.slice(0,2)}\n${v.slice(2)}`)

3个字开头就跪了

我这个要把你的可能出现的中队列出来毕竟中队好列城区不好列

var xaxis = ["城区一中队","城区二中队","城区三中队","大溪中队","泽国中队","温峤中队","新河中队","箬横中队","城南中队","滨海中队","松门中队","石塘中队"]
function _replace(arr,rule){
  var reg = null;
  return arr.map(v=>{
    for(var i=0;i<rule.length;i++){
      reg = new RegExp(rule[i]);
      if(reg.test(v)){
        return v.replace(reg,$1=>"\n"+$1);
      }
    }
  })
}
console.log(_replace(xaxis,["一中队","二中队","三中队","中队"]))
xaxis = xaxis.map(e=>e.replace('中队','\n中队'))

Array[i].replace(/城区/g,"城区n");
不过我不知道对中文有没有效果

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题