Это просто какой-то быстрый код, который я написал, и который, я думаю, сработал бы достаточно хорошо, чтобы извлечь слова из фрагмента, подобного тому, который вы дали ... Он не полностью продуман, но я думаю, что что-то в этом роде будет работать, если не удается найти готовый тип решения
textstring = "likewesaid, we'lldowhatwecan. Trytoreconnectyou, towhatyouwant," said the Sheep Man. "Butwecan'tdoit-alone. Yougottaworktoo."
indiv_characters = list(textstring) #splits string into individual characters
teststring = ''
sequential_indiv_word_list = []
for cur_char in indiv_characters:
teststring = teststring + cur_char
# do some action here to test the testsring against an English dictionary where you can API into it to get True / False if it exists as an entry
if in_english_dict == True:
sequential_indiv_word_list.append(teststring)
teststring = ''
#at the end just assemble a sentence from the pieces of sequential_indiv_word_list by putting a space between each word
Есть еще несколько проблем, которые нужно решить, например, если он никогда не вернет совпадение, это, очевидно, не сработает, поскольку никогда не будет совпадать, если бы оно просто добавляло больше символов, однако, поскольку в вашей демонстрационной строке было несколько пробелов, вы мог бы он также распознавать их и автоматически начинать заново с каждого из них.
Также необходимо учитывать пунктуацию, писать условные выражения, например
if cur_char == ',' or cur_char =='.':
#do action to start new "word" automatically