Нахождение подстроки в строке и вывод слов с подстрокой

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

s = input()
ss = input()
sss = s.split()
for word in sss:
    if ss in word:
        print (word)

Вот код который с этим почти справляется. Например если есть строка "Everybody has a Body", а подстрока "body", то второе слово, которое с большой буквы (Body) не выводится. Как сделать так, чтобы подстрока не зависела от регистра?


Ответы (1 шт):

Автор решения: Ildar

используйте метод lower, он всю строку в нижний регистр переводит

text = input().lower().split()
sub_str = input().lower()

for word in text:
    if sub_str in word:
        print(word)

если хотите сохранить регистр изначального текста и слова, можно так:

text = input().split()
sub_str = input()

low_sub_str = sub_str.lower()
for word in text:
    if low_sub_str in word.lower():
        print(word)
→ Ссылка