относительно регулярного выражения Vim для удаления конечных пробелов в каждой строке - PullRequest
3 голосов
/ 20 июля 2011
:%s/[ ]*$//g

Почему регулярное выражение выше squeeze> = 1 пробел в конце любой строки ровно в один, но не в 0 пробел?

1 Ответ

11 голосов
/ 20 июля 2011

Ваше регулярное выражение работает.В конце строки не осталось пробелов после запуска.

То, что вы, вероятно, видите, это «остаточное» инкрементальное выделение, которое исчезло бы, если бы вы использовали
:%s/[ ]\+$//g.- Обратите внимание на \+ вместо *.инкрементная подсветка сохраняется, поскольку * всегда совпадает даже с пробелами.

Чтобы удалить выделение, введите :noh (сокращение от :nohlsearch).

К вашему сведению: :%s/[ ]*$//g эквивалентно :%s/ *$//g.

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