С помощью Ant или Phing мне нужно загрузить содержимое файла в свойство, запустить регулярное выражение для значения этого свойства, а затем сохранить результат этого регулярного выражения в другом свойстве. Как лучше всего это сделать?
Я могу легко загрузить файл в свойство (с помощью Phing) следующим образом:
<loadfile file="myfile.txt" property="my.file" />
И я знаю, как обновить файл, но я не могу понять, как запустить регулярное выражение для этого свойства и сохранить результат в новом свойстве для будущего использования.
Любая помощь будет принята с благодарностью!
Обновлять
Я возился с этим, и это сработает. Дайте мне знать, если есть упрощенный способ! Приведенный ниже код загружает файл в свойство, а затем сокращает его до строки, содержащей тег title
. А затем он запускает регулярное выражение в этой строке и сохраняет содержимое этого тега в my.prop.
<loadfile file="../index.html" property="my.prop">
<filterchain>
<linecontainsregexp>
<regexp pattern="<title>" />
</linecontainsregexp>
<replaceregexp>
<regexp pattern="[\s\S]+<title>(.+?)</title>" replace="$1" />
</replaceregexp>
</filterchain>
</loadfile>
Обновление 2
На самом деле, я использовал задачу adhoc
, чтобы создать свою собственную. Работал отлично!