2013-09-26 104 views
3

有誰知道一個好的電子郵件解析器庫?搜索谷歌沒有多大幫助。文本電子郵件/ mime解析器

我有電子郵件本地丟棄maildir格式(每個文件一封郵件)。我需要解析文件解壓縮體和部件,並將其保存在數據庫中。

如果沒有這樣的事情,我可以嘗試寫一些自己學習的東西。 任何意見如何開始,將不勝感激。我需要學習parsec還是很容易做到沒有?

+0

似乎有一個放棄hackage項目:http://hackage.haskell.org/package/HackMail,也許你可以用它作爲一個起點。 (http://hackage.haskell.org/packages/archive/HackMail/0.0.1/doc/html/src/HackMail-Data-ParseEmail.html#parseEmailFromFile) – Jonke

回答

1

你可以使用正則表達式。但是,學習使用parsec(或attoparsec)編寫解析器是值得的,這似乎是一個很好的直接示例。下一次你需要解析一些東西時,你會很高興你做到了。我記得您爲parsec編寫的解析器將與attoparsec配合使用,反之亦然,所以您選擇的並不重要。以parsec開頭可能會更容易,因爲它會自動報告錯誤的位置。

我從documentation瞭解到Parsec。不要由文檔長度來初始化;你可能不需要閱讀過去的第12頁這個任務。

+0

熊,parsec是一件很酷的事,但在開始它似乎很可怕,但如果你瞭解它,你會得到比正則表達式更強大的工具 –

+0

@mhwombat:文檔的鏈接不適用於我。但是,這工作:http://legacy.cs.uu.nl/daan/parsec.html。 我也建議閱讀真實世界哈斯克爾的第16章。這裏是在線版本的鏈接:http://book.realworldhaskell.org/read/using-parsec.html –