How to count the number of non-overlapping instances of substring in a string in Python

2 Answers

0 votes
def countOccurrences(s, substr):
    count = offset = 0
     
    for i in range(len(s)):
        i = s.find(substring, offset)
        if (i > 0):
            offset = i + len(substring)
            count += 1
        else:
            break    
        
    return count;

s = 'java php c c++ python php phphp'
substring = 'php'

print(countOccurrences(s, substring))
    
    
    
'''
run:
    
3
  
'''

 



answered Aug 24, 2024 by avibootz
edited Aug 24, 2024 by avibootz
0 votes
s = 'java php c c++ python php phphp'
substring = 'php'

print(s.count(substring))
    
    
    
'''
run:
    
3
  
'''

 



answered Aug 24, 2024 by avibootz
...