我正在寻找一个英语单词列表

时间:2009-12-14 03:26:46

标签: php datasource mysqldump

有谁知道我在哪里可以找到SQL转储形式的英语单词列表?

我在网上找到了一个单词列表,但它是一个大的纯文本文件;单词由新行字符分隔。我尝试编写一个PHP脚本来循环显示单词并将它们插入到数据库中,但很快就会在读取大文件时遇到内存问题。我已将文件拆分为4个较小的文件,但我仍然遇到内存错误。如果有人知道如何将我当前的文件转换为更加导入的朋友格式,请告诉我。

4 个答案:

答案 0 :(得分:5)

使用LOAD DATA INFILE。来自文档:

  

LOAD DATA INFILE语句以非常高的速度将文本文件中的行读取到表中。

这样的事情应该有效:

LOAD DATA INFILE 'your/path/your_file.txt' INTO TABLE your_table (your_column_name);

答案 1 :(得分:0)

http://corpora.uni-leipzig.de/download.html

一些不同语言的语料库(包括英语)......

答案 2 :(得分:0)

您的方法应该可以正常工作,您只需要改变您阅读文件的方式。我猜你正在使用file_get_contents或类似的东西来读取整个文件,当你可以逐行进行并避免内存问题时。尝试fscanf()

之类的内容
$handle = fopen("yourfile.txt", "r");
while ($info= fscanf($handle, "%s\t%s\t%s\n")) {
    list ($field1, $field2, $field3) = $info;
    //... do something with the values
}

fclose($handle);

答案 3 :(得分:0)

如果您愿意在混音中使用一些python,这里有一篇很好的文章:

  

Ways to process and use Wikipedia dumps

(拉维基百科数据(这是你的英文文本)并推入MySQL数据库)