如何使用PHP从数组中的html中获取单词?

时间:2011-04-05 09:14:40

标签: php html

<?php
$html = file_get_contents('http://hypermedia.ids-mannheim.de/');
?>

此代码以字符串形式返回网站的html。如何将字符串分成不同的单词?在获取数组中的单个单词后,我想检测哪一个是德语...

3 个答案:

答案 0 :(得分:2)

$words = explode(' ', strip_tags($html));

$words = preg_split("/[\s,]+/", strip_tags($html));

第二个不仅会将空格字符视为分隔符,还会考虑制表符和逗号。

答案 1 :(得分:0)

使用正则表达式,类似这样的

#([\w]+)#i

代码示例:

if(preg_match_all('#([\w]+)\b#i', $text, $matches)) {
    foreach($matches[1] as $key => $word) {
        echo $word."\n";
    }
}

然后你必须将每种词典与某种词典进行比较。

答案 2 :(得分:0)

我认为您需要将问题分成几个步骤。 首先解析返回的html字符串,找出哪个部分是html标签和结构。您可以将DOM用于此目的。

然后,您可以将innerHTML数据与标记分开,并将innerHTML文本拆分为标记以获取数组。 Dunno是最好的方法,但是简单的阵列正则表达式分割可以完成这项工作。

找到德语单词的有趣部分,可以将你的单词列表与字典匹配,再次使用数组或映射...或者更好的是,使用数据库(SQLlite可能比真实 rdbms喜欢mysql)..