如何在一个单词中分割没有任何特殊字符,大写字母或数字的字符串

基山

我需要使用python将这个单词拆分成一个句子,有什么办法吗?

   strng = 'thisisastring'

o / p:

this is a string
托比亚斯

正如Peter和Mark已经指出的那样,这是一个棘手的问题,没有简单或独特的解决方案。您当然需要列出可能的单词。然后,最好的选择是使用回溯。

这是一个返回元组列表的简单函数,其中每个元组代表一个可能的句子。

words = [
  "a", "as", "is", "light", "or", "project", 
  "projector", "string", "the", "this"
]

def findPhrase(text):
    result = []
    for word in words:
        if text == word:
            # if the entire text is the word, there is no need
            # to look at the (now empty) rest.
            result.append((word,))
        elif text.startswith(word):
            # if the text starts with the current word, try to 
            # find all partitions of the remaining text
            rest = findPhrase(text[len(word):])

            # if there are any such partitions, add them all to our
            # list of results, and put the current word in front
            # of each of these solutions
            for solution in rest:
                result.append((word,) + solution)
    return result

请注意,我(word,)在这段代码中使用了它,使其成为一个元组,因此我们可以简单地将其添加在一起,即("is",) + ("a", "string") -> ("is", "a", "string")

该算法的基本思想是一次将字符串分割成一个单词。因此,下面是第一个近似值,它采用可能适合的第一个单词,然后尝试拆分字符串的其余部分。

def my_split(text):
    if text == "":
        return []
    for word in words:
        if text.startswith(word):
            rest = text[len(word):]
            result = [word] + my_split(rest)
            return result

但是,这通常不起作用。在您的示例中,一旦您达到了其余的存在"astring",该算法便可以尝试"as"作为下一个可能的单词,但是由于"tring"不是单词,因此它只会失败。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在大写字母或数字上分割字符串

来自分类Dev

regExp with 接受所有特殊字符至少一个数字一个大写字母任何格式

来自分类Dev

至少包含一个大写字母,一个小写字母,一个特殊字符,一位数字和一个空格的字符串

来自分类Dev

至少包含一个大写字母,一个小写字母,一个特殊字符,一位数字和一个空格的字符串

来自分类Dev

如何确定一个字符串至少包含一个大写字母,一个小写字母,一个数字和一个标点字符?

来自分类Dev

查找以指定搜索词开头,后跟另一个大写字母的任何字符串

来自分类Dev

计数大写字母在一个字符串

来自分类Dev

从最后一个大写字母开始切字符串

来自分类Dev

如何在字符串中找到至少 1 个大写字母?

来自分类Dev

SQL:多字符串替换(在第二个大写字母开头的大写字母前添加一个空格)

来自分类Dev

有没有办法在正则表达式的帮助下确保字符串至少包含N个数字,M个大写字母,R个特殊字符?

来自分类Dev

使用 PHP 查找并突出显示以大写字母开头的单词,但字符串中的第一个单词除外?

来自分类Dev

我需要一个Perl脚本来在字符串中找到至少一个大写字母,一个小写字母,一个特殊字符,一个数字和一个空白

来自分类Dev

如何在Python中获得第一个大写字母,然后每个大写字母后面没有另一个大写字母?

来自分类Dev

大熊猫-用大写字母替换字符串中的一个字母

来自分类Dev

PHP Regex在字符串中的第一个全大写字母词后插入字符

来自分类Dev

从字符串Regex rails中删除所有不是大写字母的单词

来自分类Dev

从字符串Regex rails中删除所有不是大写字母的单词

来自分类Dev

如何替换字符串的大写字母(和单词的其余部分)

来自分类Dev

正则表达式匹配至少一个大写字母,后跟可选的+/-,并且没有特殊字符

来自分类Dev

用下一个大写字母替换单词中的连字符

来自分类Dev

如何用大写字母的模式分割文本/字符串?

来自分类Dev

C - 在大写字母和数字的输入字符串中添加空格,但有一些例外

来自分类Dev

如何查找字符串是否包含大写字母和数字

来自分类Dev

当大写字母在R中的单词中间跟随大写字母时拆分字符串

来自分类Dev

当大写字母在R中的单词中间跟随大写字母时拆分字符串

来自分类Dev

以大写字母拆分字符串,但前提是没有空格

来自分类Dev

Python:试图找到第一个大写字母的字符串索引超出范围

来自分类Dev

正则表达式查找至少包含一个大写字母的子字符串

Related 相关文章

  1. 1

    在大写字母或数字上分割字符串

  2. 2

    regExp with 接受所有特殊字符至少一个数字一个大写字母任何格式

  3. 3

    至少包含一个大写字母,一个小写字母,一个特殊字符,一位数字和一个空格的字符串

  4. 4

    至少包含一个大写字母,一个小写字母,一个特殊字符,一位数字和一个空格的字符串

  5. 5

    如何确定一个字符串至少包含一个大写字母,一个小写字母,一个数字和一个标点字符?

  6. 6

    查找以指定搜索词开头,后跟另一个大写字母的任何字符串

  7. 7

    计数大写字母在一个字符串

  8. 8

    从最后一个大写字母开始切字符串

  9. 9

    如何在字符串中找到至少 1 个大写字母?

  10. 10

    SQL:多字符串替换(在第二个大写字母开头的大写字母前添加一个空格)

  11. 11

    有没有办法在正则表达式的帮助下确保字符串至少包含N个数字,M个大写字母,R个特殊字符?

  12. 12

    使用 PHP 查找并突出显示以大写字母开头的单词,但字符串中的第一个单词除外?

  13. 13

    我需要一个Perl脚本来在字符串中找到至少一个大写字母,一个小写字母,一个特殊字符,一个数字和一个空白

  14. 14

    如何在Python中获得第一个大写字母,然后每个大写字母后面没有另一个大写字母?

  15. 15

    大熊猫-用大写字母替换字符串中的一个字母

  16. 16

    PHP Regex在字符串中的第一个全大写字母词后插入字符

  17. 17

    从字符串Regex rails中删除所有不是大写字母的单词

  18. 18

    从字符串Regex rails中删除所有不是大写字母的单词

  19. 19

    如何替换字符串的大写字母(和单词的其余部分)

  20. 20

    正则表达式匹配至少一个大写字母,后跟可选的+/-,并且没有特殊字符

  21. 21

    用下一个大写字母替换单词中的连字符

  22. 22

    如何用大写字母的模式分割文本/字符串?

  23. 23

    C - 在大写字母和数字的输入字符串中添加空格,但有一些例外

  24. 24

    如何查找字符串是否包含大写字母和数字

  25. 25

    当大写字母在R中的单词中间跟随大写字母时拆分字符串

  26. 26

    当大写字母在R中的单词中间跟随大写字母时拆分字符串

  27. 27

    以大写字母拆分字符串,但前提是没有空格

  28. 28

    Python:试图找到第一个大写字母的字符串索引超出范围

  29. 29

    正则表达式查找至少包含一个大写字母的子字符串

热门标签

归档