0
我想检查Python中的字符串是否是使用PyEnchant的单词集合。
例如,我想以某种方式检查一个连接字符串,是一个字还是不:检查单词集合(pyenchant)
eng = enchant.Dict("en_US")
eng.check("Applebanana")
我知道这将返回假的,但我希望它返回true,因为苹果+香蕉是由PyEnchant合法的话。
我想检查Python中的字符串是否是使用PyEnchant的单词集合。
例如,我想以某种方式检查一个连接字符串,是一个字还是不:检查单词集合(pyenchant)
eng = enchant.Dict("en_US")
eng.check("Applebanana")
我知道这将返回假的,但我希望它返回true,因为苹果+香蕉是由PyEnchant合法的话。
如果你限制自己的话从其他两个词结合起来,你可以自己去查组合:
>>> s = "applebanana"
>>> splits = [(s[:i], s[i:]) for i in range(1,len(s))]
>>> splits
[('a', 'pplebanana'), ('ap', 'plebanana'), ('app', 'lebanana'),
('appl', 'ebanana'), ('apple', 'banana'), ('appleb', 'anana'),
('appleba', 'nana'), ('appleban', 'ana'), ('applebana', 'na'),
('applebanan', 'a')]
>>> any((eng.check(item[0]) and eng.check(item[1])) for item in splits)
True
当然,你可以扩展到两个以上,但是这应该给你的总体思路你在哪里。
谢谢。 很多复杂的,然后我认为它会。 – taesu
合并后的合法单词也有无数的合法单词组合。无数人会看起来像细微的拼写错误。然后有组合,当分裂*不同*成为不同的单词。曾听说过'expertsexchange.com'?我们在这里谈论的是多少个词汇?您可能必须手动尝试不同的分割,然后针对pyenchant测试这些词。 –
感谢您的输入。我认为pyenchant库有一些功能,检查...废话! – taesu