我在文件中有以下内容
version: [0,1,0]
我想将 Ant 属性设置为字符串值
0.1.0
。正则表达式是
version:[[:space:]]\[([[:digit:]]),([[:digit:]]),([[:digit:]])\]
然后我需要将该属性设置为
\1.\2.\3
要得到
0.1.0
我无法锻炼如何一起使用 Ant 任务来执行此操作。
我有 Ant-contrib,所以可以使用这些任务。
最佳答案
基于马特的第二个解决方案,这对我适用于任何(文本)文件,无论是否为一行。它没有 apache-contrib 依赖项。
<loadfile property="version" srcfile="version.txt">
<filterchain>
<linecontainsregexp>
<regexp pattern="version:[ \t]\[([0-9]),([0-9]),([0-9])\]"/>
</linecontainsregexp>
<replaceregex pattern="version:[ \t]\[([0-9]),([0-9]),([0-9])\]" replace="\1.\2.\3" />
</filterchain>
</loadfile>
关于regex - 根据文件中的正则表达式设置 Ant 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7869043/