javascript - 修改txt doc里面的 "string"值

标签 javascript regex node.js

我用 readFile 方法读取了一个文本文件,我得到了当前的字符串。 我需要修改里面的一些特定字段并保存文件并保持原来的格式

在读取的文件中,我得到了以下字符串,我只需要将属性 INSTANCE_ADDR 的值从 3000 更改为 4000,并保持相同的格式,问题是该值3000 可以是任何数字,所以我需要找到键 INSTANCE_ADDR,然后以某种方式更新值并使其保持相同的格式,我应该怎么做?

"BASH_VERSINFO=([0]=\"3\" [1]=\"2\" [2]=\"51\" [3]=\"1\" [4]=\"release\" [5]=\"x86_64-suse-linux-gnu\")\r\nBASH_VERSION='3.2.51(1)-release'\r\nINSTANCE_ADDR=10.97.27.7:3000\r\\r\n"

我使用 fs.readFile(filePath, 'utf8') 响应是这个内容

最佳答案

(INSTANCE_ADDR=[^:]*):\d+

试试这个。替换为 $1:4000 查看演示。

https://regex101.com/r/uF4oY4/55

var re = /(INSTANCE_ADDR=[^:]*):\d+/gi; 
var str = '"BASH_VERSINFO=([0]=\"3\" [1]=\"2\" [2]=\"51\" [3]=\"1\" [4]=\"release\" [5]=\"x86_64-suse-linux-gnu\")\r\nBASH_VERSION=\'3.2.51(1)-release\'\r\nINSTANCE_ADDR=10.97.27.7:3000\r\\r\n"';
var subst = '$1:4000'; 

var result = str.replace(re, subst);

内部

var re = /(CF_INSTANCE_PORTS='\[.*?internal):\d+/gi; 
var str = 'CF_INSTANCE_PORTS=\'[{external:50100,internal:50100}]';
var subst = '$1:12312'; 

var result = str.replace(re, subst);

关于javascript - 修改txt doc里面的 "string"值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32058835/

相关文章:

javascript - 如何在 mouseenter 事件后定位特定元素?

node.js - 从 Laravel Forge-Setup 中的 Laravel 应用程序执行 "npm"

javascript - 我可以在 JavaScript 中创建一个正则表达式来验证特定的数学公式 - 字母和括号,其中不应嵌套括号

javascript - 创建一个匹配任何包含数字的单词的正则表达式

javascript - 如何在node.js上创建一个turn服务器以进行对等连接

python - npm - "Can' t 找到 Python 可执行文件 "python",您可以设置 PYTHON 环境变量。”

javascript - 在移动设备上使用 .scrollTop 动画不起作用

javascript - TypeScript - 是否有一个选项可以禁止在除 bool 值之外的任何内容之前使用“!”?

javascript - 正则表达式拆分 Camel 案例

java - 正则表达式标签消除