У меня есть столбец в цифрах, как показано нижеКак выровнять столбец с помощью редактора vi?
-0.01343
0.002
-1.1234
Я хочу, чтобы выровнять колонку в редакторе VI, как показано ниже
-0.01343
0.002
-1.1234
У меня есть столбец в цифрах, как показано нижеКак выровнять столбец с помощью редактора vi?
-0.01343
0.002
-1.1234
Я хочу, чтобы выровнять колонку в редакторе VI, как показано ниже
-0.01343
0.002
-1.1234
Итак, вы хотите, чтобы вставить пробел перед каждой строки не начиная с минус:
соответствующая команда является :%s/^\([^-]\)/ \1/
Это ломается, как:
:
- запуск команды
%s
- регулярное выражение на всех линиях
/^\([^-]\)
- соответствие начало строки, а затем любой символ, кроме -
, который мы будем называть группу 1
/ \1
- замените на пробел, за которым следует все, что было в группе 1
/
- конец регулярного выражения, выполняется не более одного раза на каждом ли пе
Другие варианты:
При выборе намеченных линий в визуальном блоке, набрав :
запустит команду с '<,'>
. Затем перейдите к регулярному выражению, начиная с s
(нет %
), и оно будет применяться только к выделенным линиям.
Если вы положите его на /c
, он будет запрашивать подтверждение при каждой замене. Если вы закончите его с /g
, он будет работать несколько раз в строке, если это применимо. /gc
.
Если вы хотите, чтобы десятичные точки были выровнены, а не первые цифры, это сложнее и, вероятно, не может быть выполнено с помощью простой команды в vi или vim.