我是python和学习的新手。在字符串上使用时,给定here {
"Message": "Authorization has been denied for this request."
}
方法会给出字符串中子字符串的出现次数。
所以当我这样做时:
count()
预期输出应为2,因为'ANA'在'BANANA'中出现两次,但'BANANA'.count('ANA')
返回1.
有人可以解释一下,或者我可能误解了一些东西。
请指出正确的方向。
答案 0 :(得分:9)
>>> help(str.count)
Help on method_descriptor:
count(...)
S.count(sub[, start[, end]]) -> int
Return the number of non-overlapping occurrences of substring sub in
string S[start:end]. Optional arguments start and end are
interpreted as in slice notation.
请注意不重叠。
答案 1 :(得分:6)
您可以使用正则表达式来查找它。使用模块 re 中的 findall 功能查找重叠事件
import re
len(re.findall('(?=ANA)', 'BANANA'))
产生2。
或者收率3:
import re
len(re.findall('(?=ANA)', 'BANANAANA'))