有人可以建议采取以下方法。
我有一个内容看起来像这样的字符串。
var string = "Argentina,2,Australia,17,Azerbaijan,1,Bangladesh,1,Belgium,2"
我只想用引号括起国家/地区的名字。所以它看起来像这样。
"Argentina",2,"Australia",17,"Azerbaijan",1,"Bangladesh",1,"Belgium",2
我怎样才能实现这一目标。
提前致谢。
答案 0 :(得分:0)
有很多方法可以做到这一点。
你可以拆分并循环遍历偶数索引,然后换行并重新连接起来。
或者你可以做所有类型的正则表达式模式来拉出模式
var string = "Argentina,2,Australia,17,Azerbaijan,1,Bangladesh,1,Belgium,2"
var updatedStr = string.replace(/(\D+),(\d+),/g,'"$1",$2,');
但是如果你想要一个数组,那么换行就是错误的方法。用逗号分割数组,然后将字符串转换为奇数索引中的数字。
var string = "Argentina,2,Australia,17,Azerbaijan,1,Bangladesh,1,Belgium,2";
var parts = string.split(",");
for (var i=1; i<parts.length; i+=2) {
parts[i] = parseInt(parts[i],10);
}
为你做剩下的工作......
var string = "Argentina,2,Australia,17,Azerbaijan,1,Bangladesh,1,Belgium,2";
var parts = string.split(",");
var out = [];
for (var i=1; i<parts.length; i+=2) {
parts[i] = parseInt(parts[i],10);
out.push([parts[i-1],parts[i]]);
}
答案 1 :(得分:0)
var s = "Argentina,2,Australia,17,Azerbaijan,1,Bangladesh,1,Belgium,2"
var arr= s.split(",")
for (var i = 0; i < arr.length; ++i) {
if (isNaN(arr[i])) arr[i] = "\"" + arr[i] + "\"";
else arr[i] = arr[i];
}
alert(arr.join(","))