Ваш filterchain
в порядке, но ваш исходный файл должен выглядеть следующим образом:
SERVER_NAME=@SERVER_NAME@
PROFILE_NAME=@PROFILE_NAME@
Этот код (предоставленный вами)
<copy file="${web.dir}/jexamples.css_tpl"
tofile="${web.dir}/jexamples.css" >
<filterchain>
<replacetokens>
<token key="SERVER_NAME" value="server2"/>
<token key="PROFILE_NAME" value="profi"/>
</replacetokens>
</filterchain>
</copy>
заменяет токены и дает вам
SERVER_NAME=server2
PROFILE_NAME=profi
Если вы хотите сохранить исходный файл в том виде, в каком он у вас есть сейчас, можно использовать replaceregex
:
<filterchain>
<tokenfilter>
<replaceregex pattern="^[ \t]*SERVER_NAME[ \t]*=.*$"
replace="SERVER_NAME=server2"/>
<replaceregex pattern="^[ \t]*PROFILE_NAME[ \t]*=.*$"
replace="PROFILE_NAME=profi"/>
</tokenfilter>
</filterchain>
Это заменит каждую строку, начинающуюся с SERVER_NAME=
на SERVER_NAME=server2
(то же самое для PROFILE_NAME=
). Это вернет вам вывод, который вы описали.
[ \t]*
- игнорировать пробелы.