如何用nodejs替换文件中的字符串?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (554)

我使用md5 grunt任务生成MD5文件名。现在我想用任务回调中的新文件名重命名html文件中的源文件。我不知道最简单的方法是什么。

提问于
用户回答回答于

你可以使用简单的正则表达式:

var result = fileAsString.replace(/string to be replaced/g, 'replacement');

所以...

var fs = require('fs')
fs.readFile(someFile, 'utf8', function (err,data) {
  if (err) {
    return console.log(err);
  }
  var result = data.replace(/string to be replaced/g, 'replacement');

  fs.writeFile(someFile, result, 'utf8', function (err) {
     if (err) return console.log(err);
  });
});
用户回答回答于

也许“replace”模块也适用于你。它不会要求你读取然后写入文件。

根据文档改编:

// install:

npm install replace 

// require:

var replace = require("replace");

// use:

replace({
    regex: "string to be replaced",
    replacement: "replacement string",
    paths: ['path/to/your/file'],
    recursive: true,
    silent: true,
});

扫码关注云+社区

领取腾讯云代金券