我需要使用从属性文件加载的适当值替换xml文件中所有出现的正则表达式。例如
< port=${jnpPort}/>
port=3333
我希望xml文件包含< port=3333/>
现在使用
<replaceregexp match="\$\{(.*)\}" replace="${\1}" flags="g" byline="true">
<fileset dir="." includes="file.xml"/>
</replaceregexp>
我差不多<port=${jnpPort} />
。我想从属性文件中读取$ {jnpPort}的值。
答案 0 :(得分:0)
您只需使用带过滤器的副本
<filterset id="version.properties.filterset" begintoken="$" endtoken="$">
<filter token="jnpPort" value="${port}" />
</filterset>
<copy file="file.xml.template" tofile="file.xml" overwrite="true" >
<filterset refid="version.properties.filterset" />
</copy>
好的,不是很好的复制,但还不错。
答案 1 :(得分:0)
尝试:
<replaceregexp match="@< port=\${jnpPort}/>@" replace="@< port=$(port)/>@" flags="g" byline="true">
<fileset dir="." includes="file.xml"/>
</replaceregexp>