Где меньше ссылок на шаблоны поиска?


14

Где я могу найти ссылку на lessшаблоны поиска регулярных выражений?

Я хочу найти файл с lessпомощью, \dчтобы найти цифры, но он не понимает этот подстановочный знак. Я пытался найти ссылку на lessшаблоны регулярных выражений, но не смог ничего найти, ни на страницах руководства, ни в Интернете.

Ответы:


15

lessСтраница человека говорит:

   /pattern
          Search forward in the file for the N-th line containing
          the pattern.  N defaults to 1.  The pattern is a regular
          expression, as recognized by the regular expression library
          supplied by your system.

поэтому принятый синтаксис может зависеть от вашей системы. Похоже, что в моей системе Debian расширенные регулярные выражения принимаются regex(7), и почему мое регулярное выражение работает в X, а не в Y?

\dиз Perl и поддерживается не всеми движками регулярных выражений. Используйте [0-9]или [[:digit:]]для сопоставления цифр. (Их точное поведение может зависеть от локали.)


11

Поддерживаемые выражения lessзадокументированы в re_format(7)руководстве ( man 7 re_format). В этом руководстве описаны как расширенные регулярные выражения, так и основные регулярные выражения, доступные в вашей системе. lessУтилита понимает расширенные регулярные выражения.

Чтобы сопоставить цифру, вы должны использовать [0-9]или [[:digit:]](есть небольшая разница, поскольку первая зависит от текущей локали). \dШаблон является Perl, как регулярные выражения (PCRE), не поддерживается less.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.