Мне нужно переименовать файл на основе содержимого файла с тремя различными параметрами - PullRequest
0 голосов
/ 18 апреля 2019

Я сообщаю, что при срабатывании печатает в pdf и помещает в папку.Я использую Summit Scheduler для запуска действий, когда файл существует в этой папке.Переименование из содержимого файла использует регулярное выражение для переименования файла.

Я ищу имя файла с:

Admission status_Procedure date_Acct #.pdf

Я сделал регулярное выражение для статуса допуска и даты процедуры иони работают индивидуально.Статус допуска может быть забронирован, отменен или перенесен, и информация каждый раз отображается в одном и том же месте.Я пытаюсь выполнить автоматическое переименование в одной задаче, но если я не могу заставить код работать, мне может понадобиться добавить имя файла и использовать три разные задачи переименования.

Источник:

Subject: Booked Admission Notice                           {newline}************************************BOOKED ADMISSION NOTICE******************{newline}Admitting Date: 11/13/18{newline}Surgery/Procedure Date: 11/14/18{newline}

Regex для получения статуса допуска:

(?<status>\w+(?=\s+Admission))

Это работает, так как статус может состоять из трех разных вещей, поэтому он извлекает слово до уведомления о приеме и сохраняет его <status>

Использованиетот же источник, и зная, что это будет имя файла (я не могу использовать «/»), я использую код для получения даты.

(<?Procedure Date>Procedure Date: (.{9}))

Однако я все еще проверяю, как заменить"/" с "_", но он извлекает и сохраняет правильно.

Я хотел бы переименовать файл с помощью status_date_acct #, и я бы предпочел иметь логику в одной задаче, так как естьзависимые задачи, которые я должен был бы пошатнуть.Например, после переименования переместите файл и отправьте электронное письмо.Эти задачи придется отложить из-за триггера, если я добавлю больше задач.

Я использую regex101 для тестирования, и я просто собрал выражение и сгруппировал их.Например:

{(<?Procedure Date>Procedure Date: (.{9}))(?<status>\w+(?=\s+Admission)))

и это не сработало.Спасибо за помощь!

...