提取两段之间的常用词?

taw*_*kov 2 php string

如何在php5中提取两个或多个段落之间的常用词?我想可能总结每个文本以创建高排名单词列表然后进行比较.

Pas*_*TIN 5

我想最基本的方法是:

  • 每个段落划分成单词的阵列,即使用explodepreg_split
    • 第一个可能会快一点
    • 第二个可能提供更多选择
  • 也许,对单词列表进行一些过滤:
    • 清理每个单词
      • 删除特殊字符,如重音字母
      • 将所有内容转换为大写/小写,以帮助您稍后进行比较
    • 删除太常见的单词
    • 删除太短的单词
    • array_filter,在这里,可能会有所帮助
  • 然后,使用类似的东西获取两个数组中的单词列表array_intersect

  • 对于过滤来说,这是一种很好的方法,一种更准确(但更复杂)的方法是根据大型语料库中的频率减少单词的权重.例如,"the"这个词有很高的频率,所以它的排名会大大降低.具有更高等级的单词则更具代表性. (2认同)