Візьмемо, наприклад, цю команду:
find . -regex ".*\.\(cpp\|h\)"
Тут ви знайдете всі файли .h та .cpp у вашому каталозі. Символ періоду "." у регулярних виразах зазвичай означає «будь-який символ». Щоб він відповідав лише фактичному періоду, потрібно уникати його за допомогою символу зворотної косої риски '\'.
У цьому випадку, задавши персонажа з особливим значенням, ви повинні уникати його, щоб отримати фактичний персонаж, який він представляє.
Тепер візьміть круглі дужки та смужку "або", будучи символами '(', ')' та '|' відповідно. Вони також мають особливі значення, які використовуються для групування регулярних виразів. Однак, щоб отримати особливий сенс, символів потрібно уникати за допомогою зворотної косої риси! Без зворотної косої риси символи мають значення фактичного символу, який він представляє.
Чому "." трактуються по-різному від '(', ')' та '|'?