问题描述
|
我在名为build.xml的文件中包含以下文本:
component.rollup=true
component.rollup.modules.buildfiles=io-base.xml,io-form.xml,io-xdr.xml
component.rollup_dir=/base
我希望它在其中添加一个文件,因此它将变为:
component.rollup=true
component.rollup.modules.buildfiles=io-base.xml,io-xdr.xml,io-extended.xml
component.rollup_dir=/base
我该如何使用正则表达式呢?
我正在使用JavaScript。
谢谢!
编辑:
忘记告诉您文件不是静态的,它们可能会更改。只要
component.rollup.modules.buildfiles=
将永远在那里。
解决方法
假设您已经阅读了文件的内容:
fileContents.replace(
/^(component\\.rollup\\.modules\\.buildfiles\\s*=.*)$/m,\'$1,io-extended.xml\');
, 试试看(假设变量中包含XML的内容称为myXmlContent
):
if (!myXmlContent.match(/^component\\.rollup\\.modules\\.buildfiles=.*io-extended\\.xml/im) {
myXmlContent = myXmlContent.replace(/^(component\\.rollup\\.modules\\.buildfiles=.*)$/im,io-extended.xml\');
这将确保它不会被添加两次。