python-3.x - python 3.7中的字符串
问题描述
如何计算字符串中的子字符串?
示例:findSubstrings("foxcatfox","fox") # 应该返回 2
解决方案
如果递归确实是必须的,你可以先尝试划分问题。
假设你在 position 找到了匹配的子串i
,那么子串的总数是1 + findSub(string[i+1:], sub)
,所以你可以这样写:
def findSubstringsRecursive(string, substring):
counter = 0
substringLength = len(substring)
for i in range(len(string)):
if string[i] == substring[0]:
end = i + substringLength
sub1 = string[i:end]
if substring == sub1:
return 1 + findSubstringsRecursive(string[i+1:], substring)
return 0
推荐阅读
- html - 在运行动画时如何定位 HTML 元素
- wpf - 选择 tabitem 时从 TabItem 标题中删除下划线
- clickhouse - 如何有效监控 Clickhouse 实例(GCP)
- r - 根据 r 中的多个标准在数据框中创建一个新变量
- node.js - jest + mongoose 给出带有数组数组的错误模式
- apache-flink - 在 flink 中的链式运算符中分配负载
- spring - 测试时如何以不同方式配置 Spring @Component
- django - 带有动态 app_label 的 django url 标签
- angular - 如何在 p-dialog 关闭时关闭 p-dropdown?
- c# - C# 错误 System.FormatException:'输入字符串的格式不正确。' 关于数字输入