2013-12-10 58 views
0

對於一個項目,我需要在數據庫中獲得一些單詞定義。所有的定義都可以在多個DB文件中找到,但是我得到的DB文件是用於C語言程序的,並且是ASCII(我相信)的形式。我需要以某種方式將文件徹底刪除,逐行將數據添加到MySQL數據庫中。解析ASCII文件到MySQL表

我寧願使用PHP和/或MySQL。

我嘗試編寫一個PHP腳本來完成它,但它超時並且在我的系統上密集,並且在大多數情況下並未完成。

我聽說MySQL的LOAD DATA INFILE,但不知道如何使用它。

每個文件的文件名更改並沒有特定的擴展名,但是,它們都可以從文本文件中讀取,並且我確信它們在內容方面都是相同的。

我上傳了一個文件here的內容。

您可以看到有些行是無用的,但以{開頭的行很好,模式本質上是第一個詞是詞典詞,()中的內容是定義。 ""中的部分是例句。

我需要提取的是術語,定義和句子。

這些定義由普林斯頓大學提供,許可證是開放源代碼(我會記入它們)。

+0

嘗試在Google上搜索「解析文本到MySQL」以開始。我看到了一些可能會引起興趣的結果。 –

+0

此外,共享您編寫的PHP腳本可能對任何有類似問題的人都有用。 –

回答

1

除非你想重新發明輪子,否則我會用類似wordnet2sql的東西去。它將輸出一個可用於創建MySQL表的SQL腳本。

你可以在princeton's website找到數據庫規格。

LOAD DATA對csv文件非常有用,但對於特殊數據庫格式不是很有用。

+0

我對wordnet2sql不熟悉。你介意擴展它嗎? – ShadowZzz

+0

不知何故,我的答案中斷了鏈接。 http://www.semantilog.org/wn2sql.html或[讓我谷歌爲你](http://bit.ly/JcqlqV) – user555