<Предыдущая | Содержание: | Следующая>
Поиск текста с меньшими затратами и энергией
less и vim используют один и тот же метод поиска текста. Нажатие клавиши /, за которым следует регулярное выражение, приведет к поиску. Если мы используем меньше для просмотра нашего файла phonelist.txt:
[я @ linuxbox ~] $ меньше phonelist.txt
[я @ linuxbox ~] $ меньше phonelist.txt
затем найдите наше выражение проверки:
(232) | 298-2265 |
(624) | 381-1078 |
(540) | 126-1980 |
(874) | 163-2885 |
(286) | 254-2860 |
(292) | 108-518 |
(129) | 44-1379 |
(458) | 273-1642 |
(686) | 299-8268 |
(198) | 307-2440 |
~ | |
~ | |
~ |
/^\([0-9]{3}\) [0-9]{3}-[0-9]{4}$
less будет выделять совпадающие строки, позволяя легко обнаружить недопустимые:
(232) 298-2265 (624) 381-1078 (540) 126-1980 (874) 163-2885 (286) 254-2860 (292) 108-518
(129) 44-1379 (458) 273-1642 (686) 299-8268 (198) 307-2440
~
~
~ (КОНЕЦ)
(232) 298-2265 (624) 381-1078 (540) 126-1980 (874) 163-2885 (286) 254-2860 (292) 108-518
(129) 44-1379 (458) 273-1642 (686) 299-8268 (198) 307-2440
~
~
~ (КОНЕЦ)
vim, с другой стороны, поддерживает основные регулярные выражения, поэтому наше поисковое выражение будет выглядеть так:
/([0-9]\{3\}) [0-9]\{3\}-[0-9]\{4\}
Мы видим, что выражение в основном то же самое; однако многие символы, которые считаются метасимволами в расширенных выражениях, считаются литералами в основных выражениях. Они обрабатываются как метасимволы только в том случае, если они экранированы обратной косой чертой. Де-
в ожидании конкретной конфигурации напор в нашей системе совпадение будет выделено. Если нет, попробуйте эту команду командного режима:
: hlsearch
чтобы активировать выделение поиска.
Примечание: В зависимости от вашего дистрибутива напор может или не может поддерживать выделение текстового поиска. Ubuntu, в частности, предоставляет очень урезанную версию напор по умолчанию. В таких системах вы можете использовать диспетчер пакетов для установки более полной версии напор.