Обратная косая черта в замене perl

Я испытываю свою удачу с однострочным использованием perl, меняя некоторые команды в куче файлов.tex. Я дошел до следующего:

perl -pi -e "s/\Q\linenum{some more stuff}\E/\Q\uln\E/g" *tex

Что приводит к \lLn вместо ожидаемой замены скороговорки \uln, Видимо пока \Q а также \E заботиться о других специальных символов, они не заботятся о \l\u изменив регистр следующего символа, как бы я это сделал?

1 ответ

Решение

\Q\E лучше всего работает для \Q$var\E, В другом месте вы можете использовать \ чтобы избежать персонажей, которые должны убежать.

perl -i -pe's/\\linenum\{some more stuff\}/\\uln/g' *tex
Другие вопросы по тегам