python: найти второе совпадение подстроки в строке и вывести 2 символа до этого совпадения!
Kак заставить программу выдать при поиске второго совпадения строки string_2 в string_1 два символа до этого совпадения - программа должна выдать ответ - 1G
string_1 = 'uvasdvbaodaiudhfuiahsdfiuabsdgihuaishguapishgdaipsgfuda1Guvasd'
string_2 = 'uvasd'
Ответы (2 шт):
Автор решения: Vladimir Afanasyev
→ Ссылка
string_1 = 'uvasdvbaodaiudhfuiahsdfiuabsdgihuaishguapishgdaipsgfuda1Guvasd'
string_2 = 'uvasd'
secondPos = string_1.index(string_2, string_1.index(string_2) + len(string_2), len(string_1))
print(string_1[secondPos - 2:secondPos])
Данной строкой мы находим первое вхождение после первого вхождения в строке:
secondPos = string_1.index(string_2, string_1.index(string_2) + len(string_2), len(string_1))
Данной строкой мы выводим 2 символа до второго вхождения:
print(string_1[secondPos - 2:secondPos])
Автор решения: CrazyElf
→ Ссылка
Совсем коротенькое решение, как вариант:
string_1 = 'uvasdvbaodaiudhfuiahsdfiuabsdgihuaishguapishgdaipsgfuda1Guvasd'
string_2 = 'uvasd'
print(string_1.split(string_2)[1][-2:])
string_1.split(string_2)разбиваем первую строку вхождениями второй строки[1]берём 2-й кусочек получившегося разбиения, поскольку индексирование в Питоне идёт с нуля, используем индекс 1[-2:]берём последние два символа строки
Вывод:
1G