我想将一个域名分解成单词和数字,例如:
iamadomain11.com = ['i', 'am', 'a', 'domain', '11']
我该如何做?我知道可能会有多组可能性,但是目前只需要得到一组可能的结果。
iamadomain11.com = ['i', 'am', 'a', 'domain', '11']
我该如何做?我知道可能会有多组可能性,但是目前只需要得到一组可能的结果。
这个问题实际上在O'Reilly Media的书籍Beautiful Data中得到了解决。在第14章“自然语言语料库数据”中,作者使用一个巨大且免费可用的标记频率数据集,在Python中创建了一个分割器,可以完全按照您的要求进行操作。
这是一个有趣的问题!首先,您需要一个字典。出于性能原因,将其存储在哈希集中(可能可以使用Python中的字典类型)。然后,您可以迭代每个可能的字符串(“i”,“ia”,“iam”...“n11”,“1”,“11”,“1”),并在字典中查找匹配项。然后,只需迭代这些匹配项,直到您获得一个没有重叠的连续集。
这将是一种快速而简单的方法。可能有更快的方法来解决这个问题。
/usr/share/dict/words
(一个每行一个单词的纯文本文件),您可以将其用作字典。 - Ken Bloom
['i','a','ma','do','ma','in','11']
- Ken Bloom