С родной задачей муравья
Если я не хочу использовать ни внешние библиотеки, ни скрипты, я нашел в ответ на аналогичный вопрос лучший вариант (отметьте его за этот ответ).Здесь вы будете использовать ReplaceRegex :
<loadresource property="index">
<propertyresource name="build.number"/>
<filterchain>
<tokenfilter>
<filetokenizer/>
<replaceregex pattern=".*\.)" replace="" />
</tokenfilter>
</filterchain>
</loadresource>
(я использовал те же имена переменных, что и вы, в вашем решении. Конечно, при этом по-прежнему не хватает приращениячасть вашего ответа, но это не было в вашем вопросе.)
Этот скрипт загружает в index
результат удаления регулярного выражения .*\.)
из build.number
, то есть, если build.number = 1.0.0.123
затем index = 123
.
Пример
build.xml:
<project name="ParseBuildNumber" default="parse" basedir=".">
<property name="build.number" value="1.0.0.123"/>
<target name="parse">
<loadresource property="index">
<propertyresource name="build.number"/>
<filterchain>
<tokenfilter>
<filetokenizer/>
<replaceregex pattern=".*\." replace="" />
</tokenfilter>
</filterchain>
</loadresource>
<echo message="build.number=${build.number}; index=${index}"/>
</target>
</project>
$ ant
Buildfile: /tmp/build.xml
parse:
[echo] build.number=1.0.0.123; index=123
BUILD SUCCESSFUL
Total time: 0 seconds