Шпаргалка по REGEX для администраторов: от основ до практики
📌 Основы
. – любой символ
^ – начало строки
$ – конец строки
\d – любая цифра (0-9)
\w – любая буква или цифра (a-z, A-Z, 0-9, _)
\s – пробел, табуляция, перевод строки
\b – граница слова
\n – перевод строки
📌 Квантификаторы
* – 0 или больше раз (жадный)
+ – 1 или больше раз (жадный)
? – 0 или 1 раз
{n} – ровно n повторений
{n,} – n или больше повторений
{n,m} – от n до m повторений
📌 Группировка и Альтернация
(abc) – группа
(?:abc) – негруппирующая скобка
abc|def – abc или def
📌 Классы символов
[abc] – любой символ из списка
[^abc] – любой символ, кроме указанных
[a-z] – диапазон символов (от a до z)
[0-9] – цифры
📌 Якори
\b – граница слова
\B – не граница слова
^ – начало строки
$ – конец строки
📌 Практические примеры
✅ Найти все IP-адреса
\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b
✅ Вытащить email-адреса
\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}\b
✅ Проверить номер телефона (формат +7 900 123-45-67)
\+7\s\d{3}\s\d{3}-\d{2}-\d{2}
✅ Найти даты в формате YYYY-MM-DD
\b\d{4}-\d{2}-\d{2}\b
🔥 Используйте grep, sed, awk и Perl для работы с REGEX в Linux!
💾 Полезные утилиты:
grep -E 'regex' file.txt
sed -n '/regex/p' file.txt
awk '/regex/ {print $0}' file.txt
👉 @i_odmin