2013-05-02 2 views
0

Я пытаюсь выяснить, как заменить соответствующий текст в моих файлах содержимым файла. На самом деле я хочу встроить javascript-источники в HTML. Но loadfile не работает в replaceregexp.Ant Regex Заменить шаблон с содержимым файла

<replaceregexp flags="gs"> 
    <regexp pattern="\&lt;!--js--\&gt;(.*?)\&lt;!--/js--\&gt;"/> 
    <substitution expression='\&lt;script src="min.js"\&gt;\&lt;/script\&gt;'/> 
    <loadfile property="min.js" srcFile="compiled/min.js"/> 
</replaceregexp> 

ответ

2

Вот пример использования <replaceregexp> заменить каждую <!--js-->***<!--/js--> с содержанием min.js.

<project name="ant-replaceregexp" default="run" basedir="."> 
    <target name="run"> 
     <property name="js.pattern" 
      ><![CDATA[[<]!--js--[>](.*?)[<]!--/js--[>]]]></property> 

     <loadfile property="min.js" srcFile="compiled/min.js"/> 

     <replaceregexp file="test.html" flags="gs"> 
      <regexp pattern="${js.pattern}"/> 
      <substitution expression="${min.js}"/> 
     </replaceregexp> 
    </target> 
</project> 
+0

спасибо! Мой конфиг стал чище :) Могу ли я задать вам еще одну вещь, как обернуть все, что у меня есть, из файла в '' Или даже лучше оставить отметки <--js--> (это то, что я пытался сделать в начале сообщения) и вставить между ними (чтобы я мог работать несколько раз)? – asdf

+0

Добро пожаловать! Чтобы обернуть все, создайте новое свойство после '': ' $ {min.js}]]>'. Используйте это свойство в выражении ''. –

Смежные вопросы