Ambil, misalnya, perintah ini:
find . -regex ".*\.\(cpp\|h\)"
Ini akan menemukan semua file .h dan .cpp di direktori Anda. Karakter periode '.' dalam ekspresi reguler biasanya berarti "karakter apa saja". Untuk membuatnya hanya cocok dengan periode aktual, Anda harus menghindarinya menggunakan karakter backslash '\'.
Dalam hal ini, mengingat karakter dengan makna khusus, Anda harus menghindarinya untuk mendapatkan karakter aktual yang diwakilinya.
Sekarang, ambil tanda kurung dan bilah "atau", masing-masing menjadi karakter '(', ')', dan '|'. Ini juga memiliki makna khusus, yang digunakan untuk mengelompokkan ekspresi reguler. Namun, untuk mendapatkan makna khusus, karakter harus melarikan diri menggunakan garis miring terbalik! Tanpa garis miring terbalik, karakter memiliki makna karakter aktual yang diwakilinya.
Mengapa '.' diperlakukan secara berbeda dari '(', ')', dan '|'?