我正在尋找各種(更好的)解析PHP中的結構化文本數據並將該數據導入到PHP對象圖中的方法。我在PHP中看到了很多不同的解析器,用於各種基於文本的文件格式,但幾乎所有這些解析器似乎都是一些易碎的正則表達式鏈。一定會有更好的辦法!解析PHP中的結構化文本數據
在這個特定的情況下,我正在尋找解析MT940文件(銀行帳戶交易)。但是我也遇到了與其他文件格式相同的問題。總之,我最終會遇到一系列複雜的正則表達式,特別是在需要支持不同格式時。 MT940也有這個問題。 MT940不是一個嚴格定義的格式,幾乎所有的銀行都使用不同的方言。
那麼,你如何設計更強大和可擴展的解析器來處理不同的方言?
下面是一個例子MT940聲明,從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
-}
我想知道這個我自己,[here。](http://stackoverflow.com/questions/7164318/parsing-markup-into-element-tree) – 2012-03-15 00:14:20
無價。我正在尋找這個,並回去添加一個鏈接到我剛剛找到的一個項目....但是比較(您的)github名稱和您的帳戶名稱..我想「感謝您啓動https://github.com/ sandermarechal/jejik-mt940「:D – Nanne 2012-03-27 15:19:51