Вот тот, который работает в простом случае только одного уровня команд внутри \edit{...}
, максимум:
perl -00 -lpe 's,\\edit\{( (?: [^}\\]* | \\[a-z]+\{[^}]*\} )+ )\},$1,xg'
Средняя часть (?: [^ }\\]* | \\[az]+\{[^}]*\} )+
имеет альтернативы:
[^}\\]*
соответствует любой строке без закрывающей фигурной скобки или обратной косой черты (обычный текст); и \\[az]+\{[^}]*\}
соответствует чему-либо с обратной косой чертой, строчными буквами, а затем совпадающей парой фигурных скобок (например, \url{независимо...}
). Группировка (?:...)+
повторяет эти альтернативы и захват внешней скобки, поэтому мы можем заменить совпадение только частью внутри \edit{...}
.
-00
указывает Perl обрабатывать ввод по одному абзацу за раз, разделяя абзацы пустыми строками. Если вам нужно обрабатывать теги, охватывающие абзацы, измените это значение на -0
, чтобы обработать весь ввод за один раз.
В вашем примере это, кажется, работает, давая:
We Introduce a model for analyzing \emph{data} from various
experimental designs, such as paired or \url{http://www/}
longitudinal; as was done 1984 by NN \cite{mycitation} and by NNN
\cite{mycitation2}.
Однако он (как и ожидалось) терпит неудачу для ввода с двумя уровнями команд внутри \edit{...}
:
Some \edit{\somecmd{\emph{nested} commands} here}.
Превращается в:
Some \somecmd{\emph{nested} commands here}.
(неправильная закрывающая скобка удалена)
На самом деле обработка сбалансированных скобок несколько сложнее, это обсуждается, например в этом вопросе на SO: Регулярное выражение Perl: соответствие вложенным скобкам.
Вы используете помощник AUR, который действительно работает и не является фундаментально небезопасным :
cower -s '^rar$'
aur/rar 5.3.0-1 (668, 6.91)
A command-line port of the rar compression utility
Вы можете выполнить поиск по «точному имени» на веб-сайте AUR: https://aur.archlinux.org/packages/?O=0&SeB=N&K=rar&outdated=&SB=n&SO=a&PP=50&do_Search=Go , что приведет вас к https://aur.archlinux.org / пакеты / rar / .
Возьмите несколько слов описания по этой ссылке:https://aur.archlinux.org/packages/rar/
Описание:
A command-line port of the rar compression utility
например, используйте:
yaourt rar compression utility