Question

Je rencontre souvent des messages EDI dans divers formats de texte brut, par exemple le format suivant:

HEAD[customer,8][date,8][reference,10]
[lineno, 3][product, 8][quantity, 3][currency, 3][price, 10]...

.. résultant dans des messages comme celui-ci:

HEAD1122334420091031   LINDAHL
00100004711010USD0000234055
00200004712005USD0000004543
...

La lecture de la décharge ci-dessus nécessite évidemment mise au point, et je me surprends souvent à perdre de colonnes et de champs. Il serait agréable d'avoir une façon d'exprimer la grammaire du message et d'obtenir un fichier balisé (par exemple en HTML).

Il est bien sûr possible de le faire avec des scripts sur mesure dans toutes les langues, mais je suis curieux: Y at-il une chose générique pour transformer le texte brut, quelque chose comme ce que fait avec XSLT XML

?
Était-ce utile?

La solution

On dirait un emploi pour awk. Il a été conçu exactement pour analyser les fichiers texte comme ça. Il est fondé sur des règles, exactement comme XSLT. Il est déjà installé sur votre système Unix -. Juste man awk

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top