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

如何使用php从数组中的html中获取单词?,php,html,Php,Html,此代码以字符串形式返回网站的html。如何将字符串分隔为不同的单词?在获得数组中的单个单词后,我想检测哪个单词是德语的…使用正则表达式,类似这样 <?php $html = file_get_contents('http://hypermedia.ids-mannheim.de/'); ?> 代码示例: #([\w]+)#i 然后你必须把每一本都与某种词典进行比较 if(preg_match_all('#([\w]+)\b#i', $text, $matches)) {

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

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

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

#([\w]+)#i
然后你必须把每一本都与某种词典进行比较

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


第二个不仅考虑空间字符作为定界符,而且考虑制表符和逗号。

我认为你需要把问题分成几个步骤。 首先分析返回的html字符串,找出哪个部分是html标记和结构。你可以用它来达到这样的目的

然后,您可以将innerHTML数据与标记分离,并将innerHTML文本拆分为标记以获得数组。不知道最好的方法,但一个简单的数组正则表达式拆分可以完成这项工作


查找德语单词的有趣部分可以通过将单词表与词典进行匹配来完成,也可以使用数组或地图。。或者,更好的是,使用DB(SQLlite可能比mysql等真正的rdbms更好)

酷,这些词都完成了,但是如何从grammis®中的®等词中丢失某些特殊字符呢?我只想用A-Z和A-Z和ä来组成单词。
$words = explode(' ', strip_tags($html));
$words = preg_split("/[\s,]+/", strip_tags($html));