使用 Google 的 API 将字符串拆分为单词?

Using Google's API to split string into words?

我正在尝试弄清楚我应该使用哪个 API 来 Google 智能地将字符串拆分为单词。

输入:

thequickbrownfoxjumpsoverthelazydog

输出:

the quick brown fox jumps over the lazy dog

当我转到 Google 翻译并输入字符串(使用自动检测语言)并单击 Google 的“收听”图标以读出字符串时,它打破了单词并正确读出。所以,我知道他们能做到。

但我无法弄清楚是 Google 翻译的 API 还是他们的文本转语音 API 打断了单词。或者,如果有任何方法可以在某处的 API 响应中获取那些分解的单词。

有没有人有使用 Google 的 API 来执行此操作的经验?

AFAIK,在 Google Cloud 中没有 API 专门执行此操作,尽管看起来当您 translate text 使用翻译 API 它确实在后台解析拼接词
因此,由于您不能将它用于与目标语言相同的源语言,您可以做的是翻译成任何语言,然后再翻译回原始语言。不过这似乎有点矫枉过正。
例如,您可以创建一个 Feature Request 来请求在 NLP API 中实现这样的功能。

但是,根据您的用例,我想您也可以使用另一个 Whosebug Answer 中建议的方法,该方法使用动态编程来推断没有空格的字符串中空格的位置。

另一个用户甚至在同一个 post) 上基于此制作了一个名为 wordninja (See second answer 的 pip 包。

pip3 install wordninja 安装它。

用法示例:

$ python
>>> import wordninja
>>> wordninja.split('thequickbrownfoxjumpsoverthelazydog')
['the', 'quick', 'brown', 'fox', 'jumps', 'over', 'the', 'lazy', 'dog']