在字符串变量中的character之前插入几个字符(JavaScript)

3htmauhk  于 2023-03-28  发布在  Java
关注(0)|答案(3)|浏览(158)

我有下面的JavaScript变量。

var data = "ashley, andy, juana"

我希望上面的数据看起来像这样。

var data = "Sports_ashley, Sports_andy, Sports_juana"

它本质上应该是动态的。在这个变量中可以出现任意数量的逗号。
有人能让我一个简单的方法来实现这一点吗?

sd2nnvve

sd2nnvve1#

使用.replace应该可以在每个逗号之前添加运动。下面我包含了一个示例。

var data = data.replace(/,/g , ", Sports_");

在该示例中,使用带有g标志的RegExp将用Sports,替换所有逗号,而不仅仅是第一个逗号。
然后在最后你应该可以像这样将Sports附加到末尾。

data = "Sports_" + data;
whitzsjs

whitzsjs2#

使用正则表达式替换所有出现的,或使用String#replace()的字符串开头

var input = "ashley, andy, juana"
var output = input.replace(/^|,\s*/g, "$&Sports_");
console.log(output);
2w2cym1i

2w2cym1i3#

可能是一个矫枉过正,但这里有一个通用的解决方案

function sportify(data) {
  return data
    .split(/\s*,\s*/g) //splits the string on any coma and also takes out the surrounding spaces
    .map(function(name) { return "Sports_" + name } ) //each name chunk gets "Sport_" prepended to the end
    .join(", "); //combine them back together
  }

console.log(sportify("ashley, andy, juana"));
console.log(sportify("ashley   , andy,     juana"));

相关问题