确定在字符串中找到的子字符串中的次数 Python
我正在尝试弄清楚这些线在字符串中找到了多少次。 例如:
说,我想找到的字符串是平等的 123. 显然,这发生了两次 nStr, 但我有问题在于实施这种逻辑 Python. 我现在有什么:
他必须回来的答案 - 2. 目前我被困在无限循环中。
我刚刚发现图表是一种更好的方法,但是从好奇心,有人看到了一种方法,让它看起来像我已经收到过的?
nStr = '000123000123'
说,我想找到的字符串是平等的 123. 显然,这发生了两次 nStr, 但我有问题在于实施这种逻辑 Python. 我现在有什么:
pattern = '123'
count = a = 0
while pattern in nStr[a:]:
a = nStr[a:].find/pattern/+1
count += 1
return count
他必须回来的答案 - 2. 目前我被困在无限循环中。
我刚刚发现图表是一种更好的方法,但是从好奇心,有人看到了一种方法,让它看起来像我已经收到过的?
没有找到相关结果
已邀请:
12 个回复
三叔
赞同来自:
http://docs.python.org/library ... count
:
代码的工作版本:
董宝中
赞同来自:
此处示出的这些方法是重叠子字符串的情况。
例如:
回报 2
如果你想让他回来 4 [
], 你可以尝试这样的东西:
我不知道是否有更好的方法来做到这一点,但帖子很容易澄清它是如何工作的
.
喜特乐
赞同来自:
我们可以说那个问题 'pattern' 出现 len /n/ 曾经B. 'string'.
诸葛浮云
赞同来自:
将导致 3, 因为: [azc/bob/obegghaklbob] [azcbo/bob/egghaklbob] [azcbobobegghakl/bob/]
君笑尘
赞同来自:
快网
赞同来自:
你的方法:
涵秋
赞同来自:
每个周期。 你必须放:
a += nStr[a:].find/pattern/+1
...
反而:
a = nStr[a:].find/pattern/+1
喜特乐
赞同来自:
二哥
赞同来自:
董宝中
赞同来自:
在重叠子字符串的情况下没有用,尝试这样做......
詹大官人
赞同来自:
诸葛浮云
赞同来自: