Что-то вроде xslt для представления обычных текстовых сообщений EDI?
-
11-09-2019 - |
Вопрос
Я часто сталкиваюсь с сообщениями EDI в различных текстовых форматах, например в формате:
HEAD[customer,8][date,8][reference,10]
[lineno, 3][product, 8][quantity, 3][currency, 3][price, 10]...
.. в результате появляются сообщения , подобные этому:
HEAD1122334420091031 LINDAHL
00100004711010USD0000234055
00200004712005USD0000004543
...
Чтение приведенного выше дампа, очевидно, требует сосредоточенности, и я часто ловлю себя на том, что теряю представление о столбцах и полях.Было бы неплохо иметь способ выразить грамматику сообщения и получить размеченный файл (например, в HTML).
Конечно, это возможно сделать с помощью пользовательских скриптов на любом языке, но мне любопытно:Есть ли универсальная вещь для преобразования обычного текста, что-то вроде того, что XSLT делает с XML?
Решение
Похоже, работа для awk
.Он был разработан именно для такого разбора текстовых файлов.Он основан на правилах, точно так же, как XSLT.Он уже установлен на вашем компьютере Unix - просто man awk
.