我有一个像
这样的字符串var test = "1,2,3,4";
我需要将单引号(' '
)附加到此字符串的所有字符,如下所示:
var NewString = " '1','2','3','4' ";
请给我任何建议。
答案 0 :(得分:11)
首先,我会将字符串拆分成一个数组,然后可以更容易地操作到您想要的任何形式。然后,您可以使用您想要的任何胶水将它再粘合在一起(在这种情况下为','
)。唯一要做的就是确保它正确地开始和结束(在这种情况下使用'
)。
var test = "1,2,3,4";
var formatted = "'" + test.split(',').join("','") + "'"
答案 1 :(得分:5)
var newString = test.replace(/(\d)/g, "'$1'");
JS Fiddle demo(请打开您的JavaScript /开发者控制台以查看输出)。
对于多位数:
var newString = test.replace(/(\d+)/g, "'$1'");
参考文献:
答案 2 :(得分:1)
一个简短而具体的解决方案:
"1,2,3,4".replace(/(\d+)/g, "'$1'")
一个更完整的解决方案,它引用任何元素并处理分隔符周围的空间:
"1,2,3,4".split(/\s*,\s*/).map(function (x) { return "'" + x + "'"; }).join(",")
答案 3 :(得分:1)
更简单
test = test.replace(/\b/g, "'");
答案 4 :(得分:0)
使用正则表达式:
var NewString = test.replace(/(\d+)/g, "'$1'");
答案 5 :(得分:0)
字符串实际上就像一个数组,所以你可以这样做:
var test = "1,2,3,4";
var testOut = "";
for(var i; i<test.length; i++){
testOut += "'" + test[i] + "'";
}
当然,通过附加到每个角色(包括任何逗号等)来回答你的问题。
如果您需要保留逗号,请事先使用test.split(',')
并在之后添加。
(根据要求进一步解释,如果不清楚的话)。