Как заменить регулярное выражение новой строкой в ​​emacs - PullRequest
2 голосов
/ 26 ноября 2011

Я хотел бы поставить новую строку после каждого тега в файле HTML в Emacs.Теперь у меня есть

M-x query-replace-regexp \(<[^>]*>\) --> \1\n

Это возвращает

invalid use of "\"

Я уже пробовал C-x C-j, но это возвращает <html>C-x C-j<head>C-x C-j etc...

Если кто-нибудь знает решение, это было бы полезно:)

Ответы [ 3 ]

5 голосов
/ 26 ноября 2011

Вы можете использовать C-q для вставки управляющих символов.

C-q C-j для вставки новой строки, C-q C-i для вставки табулятора и т. Д.

Так что вместо \n просто наберите C-q C-j.

3 голосов
/ 26 ноября 2011

вместо \ n, используйте C-q C-j

http://jeremy.zawodny.com/blog/archives/008872.html

0 голосов
/ 14 ноября 2012

Ответы выше верны.Дополнительное предостережение: при попытке сопоставить всю строку, включая новую строку, например, ^.*SOMETHING.*$, , замените $ на Cq Cj, не добавляйте Cq Cj.В отличие от некоторых других диалектов Regexp, $ плюс перевод строки (Cq Cj) не совпадает в emacs Regexp.

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