【问题标题】:How to find multiple substrings in a string and add them to a list? [duplicate]如何在字符串中查找多个子字符串并将它们添加到列表中? [复制]
【发布时间】:2020-09-23 21:30:02
【问题描述】:

我正在尝试添加列表中出现的每个子字符串,因此在单词“hello”中它将返回 [2,3] 作为在字符串中找到的索引值。我不知道在找到每个子字符串后如何让它重新迭代。

def myFind(string,substring):

    if (string.find(substring) == -1):
        return []

    i = 0
    list = []
    while i < len(string):
        x = string.find(substring)
        list.append(x)
        i +=1
    return list
print (myFind("Hello","l"))

【问题讨论】:

标签: python


【解决方案1】:

您可以使用该模块,re:

import re

s = 'hello'

print([i.start() for i in re.finditer('l', s)])

输出:

[2, 3]

【讨论】:

    【解决方案2】:

    以下是使用列表理解的方法:

    def my_find(s,sub):
        "get all indices of substring sub in string s"
        return [i for i in range(0,len(s)-len(sub)+1) if s[i:i+len(sub)] == sub]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-10-15
      • 1970-01-01
      • 2023-02-02
      • 2021-04-21
      • 2018-01-09
      • 1970-01-01
      • 2012-05-16
      相关资源
      最近更新 更多