javascript用双引号替换单引号

javascript replace single quote with double quote

以下代码仅替换一个单引号。我需要用双引号替换所有单引号。我该怎么做?

1
2
var a ="[{'column1':'value0','column2':'value1','column3':'value2'}]";
var b = a.replace("'",""");


1
2
3
var a ="[{'column1':'value0','column2':'value1','column3':'value2'}]";
var b = a.replace(/'/g, '"');
console.log(b);

编辑:删除因为这里没有任何用处。


需要为此使用regex:

1
2
var a ="[{'column1':'value0','column2':'value1','column3':'value2'}]";
var b = a.replace(/\'/g,""");

http://jsfiddle.net/9B3K3/


可以在正则表达式上使用全局限定符(尾随的g

1
var b = a.replace(/'/g, '"');

没有全局限定符,regex(/'/只匹配'的第一个实例。


这看起来像是坏的JSON,所以我建议使用实际的数组和对象文本,然后用正确的方式编码:

1
2
var a = [{'column1':'value0','column2':'value1','column3':'value2'}];
var b = JSON.stringify(a);


您可以使用带有全局标志g的regexp,所有引号都将替换:

1
var b = a.replace(/'/g, '"');


添加g修饰符:江户十一〔四〕号