给定一个字符串和一个子字符串,编写一个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)
评论前必须登录!
注册