Здравствуйте! Столкнулся с такой проблемой: как полностью заменить слова в текстовом файле, которые одинаково начинаются, но заканчиваются по разному? К примеру нужно полностью заменить несколько слов, которые начинаются на "Повтор". Под замену должны попасть "Повтор", "Повторение", "Повторим", "Повторный".
Как это сделать в Sublime Text или в каком-нибудь другом редакторе? Или может есть команда для Linux?
Объяснение:
Для решения задачи используем sed. Ключ -i означает непосредственное редактирование файла (in-place). Тильда за -i - суффикс, который прибавится к имени исходного файла, в нём будет бэкап на случай, если что-то пойдёт не так.
Регулярка:
s - модификатор замены
(повтор\w*) - ищем группы, начинающиеся на "повтор", за которыми идут символ/число/нижнее подчеркивание в любом количестве. Обратные слэши нужны для экранирования круглых скобок.
42 - то, на что заменяем искомые группы
g - ищем все вхождения
I - регистронезависимый поиск