GNU/Linux >> Belajar Linux >  >> Linux

Lembar Cheat Regex/Dasar-dasar

Lembar Cheat/Dasar Regex

Ekspresi Reguler (regex atau regexp) adalah alat yang sangat berguna untuk mengidentifikasi pola tertentu dalam teks apa pun, yang membantu mengekstrak informasi apa pun format teksnya.

Regex dapat digunakan untuk memvalidasi input, scrapping web, menemukan string tertentu dalam dokumen, validasi sintaks untuk kompiler, dan banyak contoh lainnya.

Regex banyak digunakan dalam beberapa bahasa pemrograman menggunakan sintaks yang hampir sama, jadi artikel ini berpura-pura menunjukkan operator regex dasar.

Bagian berikut akan menunjukkan berbagai operator yang digunakan untuk regex dan beberapa contoh. Anda juga dapat menguji ekspresi reguler Anda dengan beberapa penjelasannya di halaman ini.

Jangkar

Karakter Gunakan
Menunjukkan awal string. Itu hanya akan cocok dengan string yang dimulai dengan karakter yang mengikuti
$ Menunjukkan akhir dari string. Ini akan cocok dengan string apa pun yang diakhiri dengan karakter sebelum simbol '$'
abc Cocok dengan string apa pun yang berisi urutan karakter 'abc' di atasnya

Beberapa contohnya adalah:

Contoh Deskripsi Contoh string yang cocok
^A Mencocokkan semua string yang dimulai dengan A A n apel ada di pohon”, “A restoran baru”
end$ Mencocokkan string yang diakhiri dengan urutan karakter 'akhir' Akhir ”, “Mari kita lakukanakhir
^Halo dunia$ Cocok dengan string yang tepat 'Hello world' Halo dunia
pesan Cocok dengan string apa pun yang berisi teks 'order' di dalamnya Pesanan saya nomor 54”

Quantifier

Quantifier digunakan untuk mewakili waktu yang kita inginkan agar karakter atau kelompok karakter sebelumnya muncul di pertandingan kita.

Karakter Gunakan
Menunjukkan nol atau lebih
+ Menunjukkan satu bijih lagi
Menunjukkan nol atau satu
x{n} Digunakan untuk menentukan berapa kali ('n') karakter sebelumnya ('x') akan muncul
x{n, } Digunakan untuk menentukan berapa kali minimum ('n') karakter sebelumnya ('x') akan muncul
x{n, m} Digunakan untuk menentukan jumlah minimum ('n') dan maksimum ('m') berapa kali karakter sebelumnya ('x') akan muncul

Beberapa contohnya adalah:

Contoh Deskripsi Contoh string yang cocok
halo!* Cocok dengan string apa pun 'halo' diikuti oleh nol atau lebih karakter '!' halo ”, “halo! ”, halo!!
halo!+ Mencocokkan string apa pun 'halo' diikuti oleh satu atau lebih karakter '!' halo! ”, “halo!!
halo!? Cocok dengan sembarang string 'halo' diikuti dengan nol atau satu karakter '!' halo ”, “halo!
(ha){2,4} Mencocokkan string apa pun yang mengulangi grup karakter 'ha' dua hingga empat kali haha ”, “hahaha ”, “hahahaha

ATAU operator

Karakter Gunakan
a|b Cocok dengan string apa pun yang berisi 'a' atau 'b'
[ ] Digunakan untuk merepresentasikan daftar, sehingga cocok dengan string yang berisi salah satu karakter di dalam daftar

Beberapa contohnya adalah:

Contoh Deskripsi Contoh string yang cocok
se(a|e) Mencocokkan string apa pun yang berisi teks 'se' diikuti dengan 'a' atau 'e' lihat ”, “laut
a[bcd] Cocok dengan string apa pun yang berisi 'a' diikuti dengan 'b', 'c', atau 'd' ab ”, “ac ”, “iklan

Kelas karakter

Operator kelas karakter memungkinkan Anda untuk mencocokkan karakter di dalam kategori (kelas). Operator-operator ini menawarkan negasi mereka, yang sama dengan operator normal tetapi dalam huruf besar.

Karakter Gunakan
\d Cocok dengan satu digit karakter
\w Cocok dengan satu kata karakter (huruf, angka, dan garis bawah)
\s Cocok dengan satu spasi putih karakter, termasuk tab dan jeda baris
\D Cocok dengan satu non-digit karakter
\W Cocok dengan satu bukan kata karakter (huruf, angka, dan garis bawah)
\S Cocok dengan satu spasi non-putih karakter, termasuk tab dan jeda baris
. Cocok dengan satu karakter apa pun

Bendera

Regex biasanya menggunakan bentuk /pattern/ . Pada akhirnya, kita dapat menggunakan flag berikut:

Tandai Deskripsi
g Yang global flag digunakan untuk mencari semua kecocokan individu di dalam string. Jika tidak digunakan, ekspresi akan kembali setelah kecocokan pertama
m Multiline flag memungkinkan untuk menggunakan ^ dan $ sebagai awal dan akhir baris, bukan awal dan akhir string, yang dapat berisi banyak baris
i Yang tidak peka flag membuat ekspresi reguler tidak peka huruf besar/kecil

Kesimpulan

Regex memiliki banyak kegunaan. Anda dapat menggabungkan operator sederhana yang dijelaskan dalam artikel ini untuk membuat pencarian pola yang kompleks. Salah satu contohnya adalah untuk memvalidasi alamat email, ini dapat dilakukan dengan ekspresi reguler berikut:

^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$

Contoh ini cocok dengan string lengkap yang mencari pola dengan urutan berikut:

  • [\w-\.]+ :kombinasi dari satu atau lebih karakter kata, tanda hubung, atau titik
  • @ :simbol @
  • ([\w-]+\.)+ :satu atau lebih kombinasi dari satu atau lebih karakter kata atau tanda hubung yang diakhiri dengan titik (untuk domain dan subdomain pada email seperti email.rackspace.)
  • [\w-]{2,4} :kombinasi 2, 3, atau 4 karakter kata atau tanda hubung untuk bagian akhir email (com)

Sama seperti contoh ini, ada banyak contoh lain yang dapat dengan mudah diimplementasikan untuk tujuan yang berbeda.


Linux
  1. Lembar contekan untuk perintah umum Linux

  2. Lembar contekan sysadmin yang berguna untuk SELinux

  3. Memperkenalkan lembar contekan Groff Macros

  1. Lembar Cheat Perintah Yum

  2. Lembar Cheat Perintah Linux

  3. Perintah vi dasar (lembar contekan)

  1. Cara Menggunakan Tmux + Cheat Sheet

  2. Lembar contekan Izin File/Direktori Linux

  3. Lembar Cheat Perintah Dasar Linux