Это старая версия (1.10) РегулярныеВыражения.

Содержание

Регулярные выражения

Зачем они нужны?

ОболочкаShell практически не имеет никаких встроенных средств обработки текста, кроме самых примитивных; эта задача перекладывается на внешние программы. Регулярные выражения (regular expressions) — мощный и эффективный инструмент обработки текста, совместно с возможностями оболочки позволяет конструировать простые и компактные инструменты.

Регулярные выражения используются в таких программах, как sed (ЯзыкSed, потоковый редактор), grep (поиск текста по шаблону), awk (ЯзыкAWK, язык для обработки текстов и отчётов) и многих других. Существует две разновидности (стиля) регулярных выражений; они отличны друг от друга, и в то же время имело место взаимопроникновение. В настоящее время POSIX специфицирует BRE (basic regular expressions — базовые регулярные выражения) и ERE (extended regular expressions — расширенные регулярные выражения). Синтаксис BRE поддерживается большинством утилит UNIX.

Любой неспециальный символ c совпадает сам с собой.

\c Отменить действие специального символа c.

ˆ Привязать выражение к началу строки.

$ Привязать выражение к концу строки.

. Совпадает с любым одиночным символом.

[…] Совпадает с любым символом из ...; диапазоны задают в виде a-z.

[ˆ…] Совпадает с любым cимволом, кроме указанного в ...; можно задавать диапазон.

\n Строка с которой совпало n-ное подвыражение \(...\).

\(…\) Превращает … в подвыражение.

r* Совпадает с выражением r ноль или больше раз; совпадает с пустой строкой.

r\{x\} Совпадает с выражением r точно x раз.

r\{x,\} Совпадает с выражением r от x раз и больше.

r\{x,y\} Совпадает с выражением r от x раз до y раз (включительно).

r1 r2 Конкатенация (объединение) выражений r1 и r2.

Литература

1 The Open Group Base Specifications Issue 7 [Электронный ресурс]
Regular Expressions / The IEEE and The Open Group. — IEEE Std 1003.1, 2013 Edition. — 2013. — Режим доступа: http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap09.html, свободный.


ЯзыкиПрограммирования?