为了账号安全,请及时绑定邮箱和手机立即绑定

在 .json 文件中将一个键的值插入到另一个键的值中

在 .json 文件中将一个键的值插入到另一个键的值中

富国沪深 2022-08-18 15:32:12
这是我的 json 文件{    "foo": "https://3a1821d0.ngrok.io/api/foo",    "bar": "https://3a1821d0.ngrok.io/api/bar",}我想用json文件中的另一个键替换,比如3a1821d0{    "some_variable": 3a1821d0,},{    "foo": "https://some_variable.ngrok.io/api/foo",    "bar": "https://some_variable.ngrok.io/api/bar",}这可能吗?如果是,如何?
查看完整描述

2 回答

?
一只萌萌小番薯

TA贡献1795条经验 获得超7个赞

我建议包装要替换的 ocurrence 或任何其他字符,以便替换不会与外观发生冲突。调用您的文件,这将是它的内容:<>input.json


{

    "some_variable": "3a1821d0",

    "foo": "https://<some_variable>.ngrok.io/api/foo",

    "bar": "https://<some_variable>.ngrok.io/api/bar"

}

假设您正在使用节点。此代码应该可以完成这项工作。


const fs = require('fs');


let fileContent = fs.readFileSync('input.json', "utf-8");


let content = JSON.parse(fileContent);

const someVariable = content.some_variable;


// I'm adding null and 4 to keep the file beautified

let fileContentStr = JSON.stringify(content, null, 4);


// This line replaces all ocurrences of <some_variable> by "some_variable" content

fileContentStr = fileContentStr.split('<some_variable>').join(someVariable);


// Write file again

fs.writeFileSync('output.json', fileContentStr);


查看完整回答
反对 回复 2022-08-18
?
阿晨1998

TA贡献2037条经验 获得超6个赞

您可以使用以下方法将匹配的内容替换为所需的内容。替换为所需的文本。test


let data ={

    "foo": "https://3a1821d0.ngrok.io/api/foo",

    "bar": "https://3a1821d0.ngrok.io/api/bar",

}


Object.keys(data).forEach(key => data[key] = data[key].replace(/3a1821d0/,"test"))

console.log(data)


查看完整回答
反对 回复 2022-08-18
  • 2 回答
  • 0 关注
  • 94 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信