Задать вопрос
@bldeser

Как заменить ссылки в разных местах текста на соответствующие в Notepad++?

Всем привет, возможно в Notepad++ сделать замену через регулярные выражения?

Допустим есть такой текст:

--1-https://сайт1_UwUR.jpg
--2-https://сайт1_Rserer.jpg
...
какой то текст
.....
--1-https://сайт2_X9UwB.jpg
--2-https://сайт2_X9ttttt.jpg

Нужно сделать замену по соответствующим цифрам ссылки, т.е.:

--1-https://сайт2_....jpg заменить на --1-https://сайт1_.....jpg
--2-https://сайт2_....jpg заменить на --2-https://сайт2_.....jpg


  • Вопрос задан
  • 133 просмотра
Подписаться 1 Простой 4 комментария
Помогут разобраться в теме Все курсы
  • ProductStar × РБК
    Профессия: Java-разработчик + ИИ
    9 месяцев
    Далее
  • Stepik
    Поколение Python: курс для профессионалов
    1 неделя
    Далее
  • Хекслет
    Java-разработчик
    10 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
@Metroid
В Notepad++ это делается через окно Замена, которое открывается по Ctrl + H. Внизу в режиме поиска обязательно выбери пункт Регулярные выражения.
Чтобы заменить сайт2 на сайт1 только для строк, начинающихся с определенного префикса, используй группировку.
Найти: ^(--1-https://)сайт2
Заменить на: $1сайт1
Символ ^ - это ЯКОРЬ, он заставляет движок искать совпадение только в самом начале строки. Скобки создают ту самую группу. Все, что в них попало, программа запоминает. В поле замены $1 - это команда вернуть содержимое первой группы на место. В итоге префикс --1-https:// остается нетронутым, а название сайта меняется.
Хотя нет, точнее сказать так: если таких префиксов много (1, 2, 3...), можно сделать поиск универсальным.

Найти: ^(--\d-https://)сайт2
Заменить на: $1сайт1

Здесь \d означает любую цифру. Если у тебя там может быть две или три цифры подряд, используй \d+. Это сэкономит время, если нужно обработать весь список разом.
регулярка видит структуру: начало строки, два дефиса, цифра, дефис, протокол. Она берет эту часть, сохраняет ее и подставляет обратно, меняя только то, что идет следом.
Проверь, чтобы галочка И зациклить стояла, тогда замена пройдет по всему файлу. Просто жми Заменить все и готово.
Шпаргалка по регуляркам в помощь: 24f64a21e07ceac94b452c70022a5134.jpg
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы