Это должно быть очень просто, но я ищу эффективный способ его выполнения.substitue string по индексу без использования регулярных выражений
Я знаю, что я мог бы разделить строку на две части и вставить новое значение, но я пытался заменить каждую строку между индексами 22-26 следующим образом:
line.replace(line[22:26],new_value)
Проблемой
Однако эта функция заменяет все в строке, которая похожа на шаблон в line[22:26]
.
В примере ниже, я хочу, чтобы заменить отмеченное число с номером :
Вот результаты. Обратите внимание на замену 1
с 17
в нескольких местах:
Таким образом, я не понимаю поведение replace
команды. Есть ли простое объяснение того, что я делаю неправильно?
Почему я не хочу RE
Значения между индексом 22-26 являются не объединены в форме.
Примечание: Я использую python 3.5 на машинах Unix/Linux.
'строки [22:26]' дает вам строку '1' и пространствам. Вы используете этот шаблон для замены всех вхождений в этой строке на 'new_value'. –