Поиск и замена параметров - PullRequest
0 голосов
/ 10 сентября 2018

У меня длинный конфигурационный файл YAML, который я хотел бы изменить. Я хотел бы заменить атрибут "url" на словари url, например change,

url: https://bla.bla

в

url: {my_key: https://bla.bla}

Таким образом, для данной строки "s", которая находится после клавиши url, я бы хотел обернуть ее вокруг {key: s}

Существует ли эффективный способ сделать это с помощью базового текстового редактора, найти и заменить функции? Я использую Spacemacs, кстати

1 Ответ

0 голосов
/ 10 сентября 2018

Вы можете запустить: Мета + х query-replace-regexp, который для меня сопоставлен с CTRL + Мета + % в "обычном" emacs.

При появлении запроса на регулярное выражение вы можете попробовать:

.*url:[ ]*\(.*\)

или чуть более строгий параметр, который удалит начальные и конечные пробелы:

^.*url:[ ]*\([^ ]+\)[ ]*$

и нажмите RETURN .

При появлении запроса на замену текста попробуйте:

{ my_key: \1 }

Если шаблон соответствует, вы просто нажимаете y для подтверждения или ! для автоматического подтверждения остальных. Сделайте резервную копию ваших данных в первую очередь. В регулярном выражении шаблон между круглыми скобками «захватывается» (может быть несколько захватов). При замене \ 1 заменяется первым захваченным шаблоном. Потратьте некоторое время на изучение регулярных выражений. Они очень мощные.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...