基本上 - 我想计算各种术语的“接近度”。 “接近”我的意思是指它们之间的空格/字符/单词的数量。
示例:
术语= Word1 / Word2 Chunk =“ blah Word1 blah blah blah blah blah blah Word2 blah ” Proximity = Word1-Word2:5 脚本会看到2个术语,找到它们,然后根据它们之间的单词看到距离。
更高级的版本是检查语义结构 - 并确定术语是出现在同一语义元素,兄弟或父母等中。 因此,术语的邻近发现可以在同一段落内,或在连续的段落中,或在相同的“父”(标题)下,但在其他方面分开等。
此外 - 稍后介绍诸如词干/关系/探测之类的内容也可能有用。
我环顾网络(Google,这里,php论坛,php脚本网站)。 没有看到类似的东西。 我可以在一些类似(有限)的网站上看到工具 - 通常是基于SEO的工具。 我希望能够将其应用于“文本”...因为我可以将它应用于上传的word / txt文件等。
我没有看到任何真实的例子 - 所以我只能假设编码而不是琐事。
问题是 - 我该怎么做? 我如何处理单词的变体顺序(Word1 + Word2 / Word2 + Word1)? 我如何处理相同元素/结构内/外的识别接近度?
希望有人可以提出一些建议。
答案 0 :(得分:2)
如果您需要对给定文本进行大量此类搜索,则可以首先将整个文本编入索引,该数据库包含单词,文本中的位置以及段落编号(如果需要)。然后,您可以选择所有Word1和Word2位置,并且推断最小距离不应该太难。
修改强> 这是一次尝试简单的一次性算法,而不使用数据库。