【发布时间】:2021-11-25 16:50:36
【问题描述】:
我有一个我现在无法自己解决的问题。
我的任务如下:
我有各种文本和字符串数组。
字符串数组可以包含单个单词或单词组合,如下所示:["apple", "orange fruit", "strawberry field", "ananas", "tomato plant"]。
现在我需要扫描我的文本以查找数组中的元素并确定分数。 如果一个文本包含许多字符串(或它们的组合),它应该比其他文本产生更大的分数。 如果可能,结果还应该容忍拼写错误。
谁能给我一个提示,解决这个问题的最佳方法是什么? 有没有可以帮助解决这个问题的库? 我编码的语言是 Java。
提前谢谢你们。
【问题讨论】:
-
您的第一步是获取一个文本和一个单词字符串数组,并创建一个包含每个单词及其频率的地图。下一步将是弄清楚如何为您的地图评分。例如,六个苹果比草莓地和一株番茄价值高还是低?最后,您将为每个单词创建 Soundex 值,将文本中的每个单词转换为其 Soundex 等效项,并以这种方式进行匹配。
-
请提供足够的代码,以便其他人更好地理解或重现问题。
标签: java string text keyword textmatching