Я знаю, что этот вопрос задавался много раз в разных версиях, но я не нашел ничего, что помогло мне.Найти и заменить слова в строке
У меня есть список слов:
arr = ["id",...]
И у меня есть несколько строк:
str = "my_id"
str1 = "Id_number"
str2 = "my_id_rocks"
str3 = "my_idea"
Im пытаясь найти слово «идентификатор» в строках и включить в верхний регистр. но если id
является частью слова в строке, то ничего не делать. Значение после того как я применить функцию больной получает:
str = "my_ID"
str1 = "ID_number"
str2 = "my_ID_rocks"
str3 = "my_idea"
Я ничего не могу о струнах предположить, некоторые буквы могут быть заглавными буквами, некоторые в нижнем регистре.
До сих пор это то, что я есть, но это также заглавной idea => IDea
, которые я не хочу:
def words_to_upper(str):
words = ["id"]
for word in words:
if word in str.lower():
replace_word = re.compile(re.escape(word), re.IGNORECASE)
str = replace_word.sub(word.upper(), str)
break
return str
Спасибо.
@ Delgan, зачем это удалять? Мне нужно загладить слово. – MichaelR
@ Delgan, извините, моя ошибка, я, конечно, должен сделать все слово в верхнем регистре. Я пытаюсь найти слово «id» в строках и включиться в верхний регистр. но если «id» является частью слова, тогда ничего не делайте. – MichaelR
Хорошо, извините, я неправильно понял ваш вопрос. – Delgan