Apa itu Ekspresi Reguler Linux?
Ekspresi Reguler Linux adalah karakter khusus yang membantu pencarian data dan pencocokan pola kompleks. Ekspresi reguler disingkat menjadi 'regexp' atau 'regex'. Mereka digunakan di banyak program Linux seperti grep, bash, rename, sed, dll.
Jenis ekspresi Reguler
Untuk memudahkan pemahaman mari kita pelajari berbagai jenis Regex satu per satu.
- Ekspresi Reguler Dasar
- Ekspresi Reguler Interval
- Ekspresi reguler yang diperluas
- Ringkasan
Klik di sini jika video tidak dapat diakses
Ekspresi Reguler Dasar
Beberapa perintah yang umum digunakan dengan ekspresi Reguler adalah tr, sed, vi dan grep. Di bawah ini adalah beberapa Regex dasar.
Simbol | Deskripsi |
---|---|
. | menggantikan karakter apapun |
cocok dengan awal string | |
$ | cocok dengan akhir string |
* | cocok dengan nol atau lebih kali karakter sebelumnya |
\ | Mewakili karakter khusus |
() | Kelompokkan ekspresi reguler |
? | Cocok persis dengan satu karakter |
Mari kita lihat contohnya.
Jalankan sampel kucing untuk melihat konten file yang ada
Cari konten yang mengandung huruf 'a'.
' ^ ' cocok dengan awal string. Mari mencari konten yang DIMULAI dengan file
Hanya baris yang dimulai dengan karakter yang difilter. Baris yang tidak berisi karakter 'a' di awal akan diabaikan.
Mari kita lihat contoh lain -
Pilih hanya baris yang diakhiri dengan t menggunakan $
Ekspresi Reguler Interval
Ekspresi ini memberi tahu kita tentang jumlah kemunculan karakter dalam sebuah string. Mereka
Ekspresi | Deskripsi |
---|---|
{n} |
Cocok dengan karakter sebelumnya yang muncul tepat 'n' kali |
{n, m} | Cocok dengan karakter sebelumnya yang muncul 'n' kali tetapi tidak lebih dari m |
{n,} | Mencocokkan karakter sebelumnya hanya jika muncul 'n' kali atau lebih |
Contoh:
Filter semua baris yang mengandung karakter 'p'
Kami ingin memeriksa bahwa karakter 'p' muncul tepat 2 kali dalam string satu demi satu. Untuk ini sintaksnya adalah:
cat sample | grep -E p\{2}
Catatan: Anda perlu menambahkan -E dengan ekspresi reguler ini.
Ekspresi reguler yang diperluas
Ekspresi reguler ini berisi kombinasi lebih dari satu ekspresi. Beberapa dari mereka adalah:
Ekspresi | Deskripsi |
---|---|
\ + |
Cocok dengan satu atau lebih kemunculan karakter sebelumnya |
\? |
Mencocokkan nol atau satu kemunculan karakter sebelumnya |
Contoh:
Mencari semua karakter 't'
Misalkan kita ingin memfilter baris di mana karakter 'a' mendahului karakter 't'
Kita bisa menggunakan perintah seperti
cat sample|grep "a\+t"
Ekspansi brace
Sintaks untuk perluasan tanda kurung kurawal adalah urutan atau daftar item yang dipisahkan koma di dalam tanda kurung kurawal "{}". Item awal dan akhir secara berurutan dipisahkan oleh dua titik "…".
Beberapa contoh:
Dalam contoh di atas, perintah echo membuat string menggunakan ekspansi brace.
Ringkasan:
- Ekspresi reguler adalah sekumpulan karakter yang digunakan untuk memeriksa pola dalam string
- Mereka juga disebut 'regexp' dan 'regex'
- Penting untuk mempelajari ekspresi reguler untuk menulis skrip
- Beberapa ekspresi reguler dasar adalah:
Simbol | Deskripsi |
---|---|
. | menggantikan karakter apapun |
cocok dengan awal string | |
$ | cocok dengan akhir string |
- Beberapa ekspresi reguler yang diperluas adalah:
Ekspresi | Deskripsi |
---|---|
\ + | Cocok dengan satu atau lebih kemunculan karakter sebelumnya |
\? | Mencocokkan nol atau satu kemunculan karakter sebelumnya |
- Beberapa ekspresi reguler interval adalah:
Ekspresi | Deskripsi |
---|---|
{n} | Cocok dengan karakter sebelumnya yang muncul tepat 'n' kali |
{n, m} | Cocok dengan karakter sebelumnya yang muncul 'n' kali tetapi tidak lebih dari m |
{n,} | Mencocokkan karakter sebelumnya hanya jika muncul 'n' kali atau lebih |
- Ekspansi brace digunakan untuk menghasilkan string. Ini membantu dalam membuat beberapa string dari satu.