Tutorial Ekspresi Reguler Linux: Contoh Grep Regex

Apa itu Ekspresi Reguler Linux?

Ekspresi Reguler Linux adalah karakter khusus yang membantu pencarian data dan pencocokan pola yang rumit. Ekspresi reguler disingkat menjadi 'regexp' atau 'regex'. Ekspresi reguler digunakan dalam banyak program Linux seperti grep, bash, rename, sed, dll.

Jenis ekspresi reguler

Untuk memudahkan pemahaman mari kita pelajari berbagai jenis Regex satu per satu.

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 tercantum beberapa Regex dasar.

Символ Description
. menggantikan karakter apa pun
^ cocok dengan awal string
$ cocok dengan akhir string
* cocok nol kali atau lebih dengan karakter sebelumnya
\ Mewakili karakter khusus
() Mengelompokkan ekspresi reguler
? Cocok dengan tepat satu karakter

Mari kita lihat contohnya.

Jalankan sampel kucing untuk melihat isi file yang ada

Ekspresi Reguler Dasar

Cari konten yang mengandung huruf 'a'.

Ekspresi Reguler Dasar

'^' cocok dengan awal string. Mari kita cari konten yang DIMULAI dengan a

Ekspresi Reguler Dasar

Hanya baris yang dimulai dengan karakter yang difilter. Baris yang tidak mengandung karakter 'a' di awal akan diabaikan.

Mari kita lihat contoh lain –

Ekspresi Reguler Dasar

Pilih hanya baris yang diakhiri dengan t menggunakan $

Ekspresi Reguler Dasar

Interval Ekspresi reguler

Ekspresi ini memberi tahu kita tentang jumlah kemunculan karakter dalam sebuah string. Mereka

Ekspresi Uraian Teknis
{bukan} Cocok dengan karakter sebelumnya yang muncul 'n' kali dengan tepat
{n,m} Cocok dengan karakter sebelumnya yang muncul 'n' kali tetapi tidak lebih dari m
{N, } Cocok dengan karakter sebelumnya hanya jika muncul 'n' kali atau lebih

Contoh:

Filter semua baris yang mengandung karakter 'p'

Interval Ekspresi reguler

Kami ingin memeriksa apakah karakter 'p' muncul tepat 2 kali dalam string satu demi satu. Untuk ini sintaksnya adalah:

cat sample | grep -E p\{2}

Interval Ekspresi reguler

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 Uraian Teknis
\+ Cocok dengan satu atau lebih kemunculan karakter sebelumnya
\? Cocok dengan nol atau satu kemunculan karakter sebelumnya

Contoh:

Mencari semua karakter 't'

Ekspresi reguler yang diperluas

Misalkan kita ingin memfilter baris di mana karakter 'a' mendahului karakter 't'

Kita bisa menggunakan perintah seperti

cat sample|grep "a\+t"

Ekspresi reguler yang diperluas

Ekspansi penjepit

Sintaks untuk perluasan kurung kurawal adalah urutan atau daftar item yang dipisahkan koma di dalam kurung kurawal “{}”. Item awal dan akhir dalam suatu urutan dipisahkan oleh dua titik “..”.

Beberapa contoh:

Ekspansi penjepit

Dalam contoh di atas, perintah echo membuat string menggunakan ekspansi kurung kurawal.

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:
Символ Description
. menggantikan karakter apa pun
^ cocok dengan awal string
$ cocok dengan akhir string
  • Beberapa ekspresi reguler yang diperluas adalah:
Ekspresi Uraian Teknis

\+

Cocok dengan satu atau lebih kemunculan karakter sebelumnya
\? Cocok dengan nol atau satu kemunculan karakter sebelumnya
  • Beberapa ekspresi reguler interval adalah:
Ekspresi Uraian Teknis
{bukan} Cocok dengan karakter sebelumnya yang muncul 'n' kali dengan tepat
{n,m} Cocok dengan karakter sebelumnya yang muncul 'n' kali tetapi tidak lebih dari m
{N, } Cocok dengan karakter sebelumnya hanya jika muncul 'n' kali atau lebih
  • Ekspansi brace digunakan untuk menghasilkan string. Ini membantu dalam membuat banyak string dari satu.