0

我试图替换文件中的 2 个变量值。我将nodejs中的文件内容读入一个字符串。我需要搜索这些变量并替换它们的值。

原始字符串

var useStub = false;var serviceUrl = 'http://servicetest.test.com';

我想运行某种命令,例如

var result = someFile.replace(regex, 'http://servicestage.stage.com');
var result = someFile.replace(regex, 'true');

在这个命令之后,我想要像这样的输出

var useStub = true;var serviceUrl = 'http://servicestage.stage.com';    

我尝试了几个正则表达式模式,但没有得到我需要的输出。我对正则表达式的经验很少。有人可以帮我弄这个吗?


在@FloatingCoder 的帮助下终于让它工作了。

var text = "var useStub=false;var serviceUrl='http://servicetest.test.com';var hello='sdfdsfs';";
text = text.replace(/var serviceUrl='.*?';/, "var serviceUrl='http://newurl.test.com';");
text = text.replace(/var useStub=.*?;/, "var useStub=true;");
console.info(text);

这是别人的小提琴

4

1 回答 1

2

尝试这个...

var text = "var useStub = false;var serviceUrl = 'http://servicetest.test.com';";

text = text.replace(/var serviceUrl = '.*?';/, "var serviceUrl = 'http://newurl.test.com';");
text = text.replace(/var useStub = .*?;/, "var useStub = true;");

document.getElementById("output").innerHTML = text;

这可能需要更多调整,具体取决于文件中的其他内容,但根据您提供的内容,这将起作用。

这里有一个 JSFiddle 可以玩。

于 2013-05-08T07:35:45.067 回答