Sto cercando vari modi (migliori) di analizzare i dati di testo strutturato in PHP e ottenere tali dati in un grafico di oggetti PHP. Ho visto molti parser diversi in PHP per una varietà di formati di file basati su testo, ma quasi tutti sembrano essere una catena fragile di espressioni regolari. Ci deve essere un modo migliore!Analisi di dati di testo strutturato in PHP
In questo caso specifico, sto cercando di analizzare i file MT940 (transazioni di conto bancario). Ma ho incontrato lo stesso problema con altri formati di file. Invariabilmente finisco con una grande catena di regex che diventa complessa da mantenere, specialmente quando devono essere supportati diversi formati. MT940 ha anche questo problema. MT940 non è un formato strettamente definito e praticamente tutte le banche usano un dialetto leggermente diverso.
Quindi, come progettare parser più robusti ed estendibili per gestire dialetti diversi?
Ecco una dichiarazione MT940 esempio, tratto da this question:
{1:F01AHHBCH110XXX0000000000}{2:I940X N2}{3:{108:XBS/091502}}{4:
:20:XBS/091202/0001
:25:5887/507004-50
:28C:140/1
:60F:C0914CHF7789,
:61:0912021202D36,80NTRFNONREF//0887-1202-29-941
04392579-0 LUTHY + xxx, ZUR
:86:6034?60LUTHY + xxxx, ZUR vom 01.12.09 um 16:28 Karten-Nr. 2232
2579-0
:62F:C091202CHF52,2
:64:C091302CHF52,2
-}
Mi sto chiedendo questo, [qui.] (Http://stackoverflow.com/questions/7164318/parsing-markup-into-element-tree) –
Priceless. Stavo cercando questo, e sono tornato per aggiungere un collegamento a un progetto che ho appena trovato .... Ma confrontando il tuo nome github con il nome del tuo account .. Immagino "grazie per l'avvio di https://github.com/ sandermarechal/jejik-mt940 ": D – Nanne