【发布时间】:2012-04-06 01:21:44
【问题描述】:
我需要从给定的单词中分离出所有可能的后缀(大约 1000 个)。我正在考虑使用字典。
这样做时,我会将后缀作为键(以及有关后缀的一些附加信息作为进一步处理所需的值)。如果最长可能的后缀是 4 个字母,我会在字典中搜索所有可能的组合。 例如: 给定一个单词:'abcdefg',我会在字典中搜索 'g'、'fg'、'efg' 和 'defg'。
我进行了一些研究,但没有发现 dict 有太多类似的用途。这可能是一个可行的解决方案,还是我在这里遗漏了什么?非常感谢您的帮助。
【问题讨论】:
-
我不明白这个要求:你是从字符串生成后缀?使用 RE 时代码的外观如何?
-
networkx 可能更适合搜索。我不明白正则表达式部分,你只是用它们来分割你的后缀吗?
-
我考虑过暂时使用正则表达式进行预处理,因为大多数后缀都可以分解成更小的块……但我并没有真正以书面形式表达这个想法,我将其编辑掉。
-
“后缀”是否只是从静态字符串中增加字母字符串?如果是这样,您不需要正则表达式。您是否匹配定义的后缀是否在字符串上?对于 1000 个元素,您可以使用列表、字典或集合——这取决于使您的数据更易于使用的原因。
-
我会以相反的顺序搜索(即 4、3、2、1)。对我来说听起来更合理。
标签: python regex dictionary