这与 stackoverflow 上的大多数 trie 问题有点不同(是的,我已经花时间搜索和阅读),所以请多多包涵。
我有文件 A,其中包含以下词:allow*、apolog* 等。总共有数万个这样的条目。我的文件 B 包含一段文本,最多有数千个单词。我希望能够将文件 B 中的文本中的单词与文件 A 中的单词匹配。
例子:
文件 B 的“道歉”将匹配文件 A 的“道歉*”
文件 B 的 "a" 既不匹配 "allow*" 也不匹配 "apolog*"
文件 B 的“apologizetomenoworelseiwillkillyou”也将匹配文件 A 的“道歉*”
任何人都可以建议一种算法/数据结构(最好在 python 中可行)可以帮助我实现这一目标吗?我研究过的尝试似乎更多是关于将前缀与整个单词匹配,但在这里,我将整个单词与前缀匹配。词干算法是不可能的,因为它们有固定的规则,而在这种情况下,我的后缀可以是任何东西。我不想遍历文件 A 中的整个列表,因为那会花费太多时间。
如果这令人困惑,我很乐意澄清。谢谢。