Python计算字符串中子字符串数量的三种方法(findall、finditer和startswith)

【Python计算字符串中子字符串数量的三种方法(findall、finditer和startswith)】给定一个字符串和一个子字符串,编写一个Python程序来查找字符串中有多少个子字符串(包括重叠的情况)。让我们在下面讨论几个方法。
方法一:使用re.findall()

# Python代码 # 计算字符串中子字符串数量import re # 初始化字符串 ini_str = "ababababa" sub_str = 'aba'# 使用re.findall计算子字符串的数量 res = len(re.findall('(?= aba)', ini_str)) # 打印结果 print("子字符串的数量:", res)

方法二:使用re.finditer()
# Python代码 # 计算字符串中子字符串的数量import re # 初始化字符串 ini_str = "ababababa" sub_str = 'aba'# 使用re.finditer计算子字符串的数量 res = sum(1 for _ in re.finditer('(?= aba)', ini_str)) # 打印结果 print("子字符串的数量:", res)

方法三:使用startswith()
# Python代码 # 计算字符串中子字符串的数量# 初始化字符串 ini_str = "ababababa" sub_str = 'aba'# 使用startswith计算子字符串的数量 res = sum(1 for i in range(len(ini_str)) if ini_str.startswith("aba", i)) # 打印结果 print("子字符串的数量:", res)

    推荐阅读