如何拆分这种连接的字符串:"howdoIsplitthis?"

How to split concatenated strings of this kind: "howdoIsplitthis?"

假设我有这样一个字符串:

"IgotthistextfromapdfIscraped.HowdoIsplitthis?"

我想制作:

"I got this text from a pdf I scraped. How do I split this?"

我该怎么做?

简答:没有现实的机会。

长答案:

在何处拆分字符串的唯一提示是在字符串中找到有效的单词。所以你需要一本预期语言的字典,不仅包含词根,还包含所有的词尾变化(这是正确的语言术语吗?)。然后您可以尝试找到与您的字符串字符匹配的这些单词的序列。

原来这个任务叫做word segmentation, and there is a python library可以做到:

>>> from wordsegment import load, segment
>>> load()
>>> segment("IgotthistextfromapdfIscraped.HowdoIsplitthis?")
['i', 'got', 'this', 'text', 'from', 'a', 'pdf', 'i', 'scraped', 'how',
 'do', 'i', 'split', 'this']