Как мне удалить токены во время копирования в Ant? - PullRequest
1 голос
/ 25 июля 2011

У меня есть файлы, которые мне нужно очистить в процессе сборки. Есть фиксированная строка, которую мне нужно удалить везде, где она появляется. Файлы копируются, поэтому во время этой попытки я попытался включить filterset, где токен - это текст, который нужно удалить, а значение - пустая строка. Это не сработало, потому что я установил begintoken и endtoken в пустую строку, а Ant это не понравилось.

Это не разовая операция, поэтому она должна быть частью процесса сборки. Файлы содержат операторы SQL INSERT и используются для заполнения таблиц во время выполнения. Каждая строка ссылается на схему плюс имя таблицы, и мне нужно только имя таблицы, например,

insert into Schema1.Table1 ...

должно быть

insert into Table1 ...

Спасибо!

1 Ответ

2 голосов
/ 25 июля 2011

Используйте вложенную цепочку фильтров с токеном, что-то вроде =

<copy todir="...">
 <fileset dir="..." />
  <filterchain>
   <tokenfilter>
    <replacestring from="Schema1." to="" />
   </tokenfilter>
  </filterchain>
</copy>

если вам нужно регулярное выражение для замены, используйте =

...
<tokenfilter>
 <replaceregex pattern="..." replace="..." flags="".../>
</tokenfilter>
...

вместо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...