Удвоить слова в строке с разделителями, в которых есть хотя бы одна буква отличная от букв в данном слове
Проблема заключается в разделении входной строки на слова. Есть входная строка состоящая из слов и разделительных символов и есть некое слово, надо каждое слово внутри строки удвоить, если в нем есть хотя бы одна буква отличная от букв в слове. Проблема заключается в разделении входной строки на слова. Дальше понимаю как сделать, но для этого нужен такой список, чтобы проверить каждую букву из каждого элемента списка на вхождение в данное слово. Вот начало моего кода:
razd = str(',;:.?!')
razd = razd + '"' + "'"
slovo = input()
stroka = input()
for i in stroka:
if i in razd:
stroka = stroka.split(sep=i)
Ответы (1 шт):
Автор решения: Alioshca Z
→ Ссылка
Приведите пример входных данных, а то по описанию пока не совсем понятно. В общем виде можно всегда использовать регулярные выражения.
import re
slovo = 'погода'
stroka = 'пог/ушёл:;иду'
bad_words = []
slova_iz_stroki = re.findall(r'[a-zA-Zа-яА-ЯёЁ0-9]+', stroka)
for sl in slova_iz_stroki:
status = 0
for bukva in sl:
if bukva in slovo:
continue
else:
status += 1
if status > 0:
bad_words.append(sl)
for slv in bad_words:
stroka = stroka.replace(slv, slv*2)
print(stroka)