Javascript 如何替换包含未固定字符的字符串中的某些字符
我的绳子如下Javascript 如何替换包含未固定字符的字符串中的某些字符,javascript,regex,Javascript,Regex,我的绳子如下 "value":"my"value" 我需要把它转换成 "value":"my\"value" 此字符串中的某些部分是固定的,例如 "value":" 有些部分是不固定的。所以我想我可以像下面这样处理字符串: "value":"xx"xxx" x部分没有固定,我需要更换字符串 "value":"xx\"xxx" 我想我应该试试正则表达式,谁能帮我构建正则表达式呢 '"value":"xx"xxx"'.replace(/("value":".*)"(.*")/, '$1\\
"value":"my"value"
我需要把它转换成
"value":"my\"value"
此字符串中的某些部分是固定的,例如
"value":"
有些部分是不固定的。所以我想我可以像下面这样处理字符串:
"value":"xx"xxx"
x部分没有固定,我需要更换字符串
"value":"xx\"xxx"
我想我应该试试正则表达式,谁能帮我构建正则表达式呢
'"value":"xx"xxx"'.replace(/("value":".*)"(.*")/, '$1\\"$2');
资源日志
{ "key": "name",
"value" : "value with" quote",
}
代码片段
content = content.replace(/"[^"\\:\n]+"[^"\\:\n]+"/gi, (s) => {
var substr = s.slice(1, s.length - 1);
substr = substr.replace("\"", "\\\"");
return "\"" + substr + "\"";
});
全样本函数
var fs = require("fs");
module.exports = () => {
let file = 'res.log';
let content = fs.readFileSync(file, 'utf8');
console.log(content);
content = content.replace(/"[^"\\:\n]+"[^"\\:\n]+"/gi, (s) => {
var substr = s.slice(1, s.length - 1);
substr = substr.replace("\"", "\\\"");
return "\"" + substr + "\"";
});
console.log(content);
};
@一定的表现,自然结束?这是什么意思?