Что найти?

Как найти количество перекрывающихся вхождений подстроки в Python?

/
/

Могут быть скрипты, в которых вхождения подстроки в строке могут перекрываться. Например, строка abababa имеет перекрывающиеся вхождения подстроки aba.

В этом руководстве мы узнаем, как найти количество таких перекрывающихся вхождений подстроки в заданной строке.

Шаги, чтобы найти количество перекрывающихся вхождений

Чтобы получить общее количество вхождений подстроки в строке, где вхождения могут перекрываться, выполните следующие действия:

  1. Пройдите по строке, используя цикл for и диапазон (len (строка)).
  2. Найдите индекс первого вхождения подстроки с помощью String.find (substring, start).
  3. Если неотрицательный индекс, обновите начало с результатом индекса, полученного на предыдущем шаге. Также увеличьте счетчик и обновите переменную цикла for цикла на шаге 1 до index + 1. Если индекс отрицательный, прервать цикл.
  4. Счетчик будет иметь количество вхождений подстроки в строку.

Пример 1

В следующей программе мы взяли строку, а затем подстроку. Мы найдем перекрывающиеся вхождения подстроки в строке.

string = 'abcdefghghghghghgh.'
substring = 'ghg'

count = 0
start = 0
if(len(string)>0 and len(string)<201):
	for i in range(len(string)):
		i = string.find(substring, start)
		if(i>0):
			start = i+1
			count += 1
		else:
			break
print(count)

Вывод:

5

Резюме

В этом руководстве в Python мы узнали, как найти вхождения подстроки в строке, где они могут перекрываться.

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

This div height required for enabling the sticky sidebar