cara penggunaan REGEXP
Sebelum saya sudah membahas bagaimana penggunaan operator LIKE dan NOT LIKE, pada tutorial kali saya mau membahas bagaimana cara penggunaan REGEXP (berasal dari “regular expression”) untuk kepentingan pencocokan string. Simbol-simbol yang digunakan pada REGEXP serupa dengan regulerexpression yang digunakan pada utilitas grep yang terdapat pada system operasi UNIX dan LINUX. MySQL sebenarnya menyediakan RLIKE, yang merupakan sinonim REGEXP.
Bentuk penulisan dari REGEXP:
Str REGEXP pola
Dalam hal ini, hasil ekspresi berupa TRUE(1) kalau pola cocok dengan str. Kalau tidak ada kecocokan, hasil ekspresi berupa FALSE(0). Sekiranya strberupa NULL, maka hasil dari ekspresi tersebut juga berupa NULL. Sebelum ke penjelasan lebih dalam ada baiknya anda harus mengenal simbol-simbol dari regular expression dan juga keterangan pola percocokan yang ada pada tabel berikut ini:
simbol | keterangan |
^ | Cocok dengan string |
$ | Cocok dengan akhir string |
.(titik) | Cocok dengan sebarang karakter tunggal |
[] | Cocok dengan sebarang karakter yang terdapat dalam kuruung siku |
[^] | Cocok dengan sebuah karakter tungggal selain karakter-karakter yang terletak sesudah tanda ^ |
℮* | Cocok dengan nol, satu, atau sejumlah elemen ℮ |
℮+ | Cocok dengan satu atau sejumlah elemen ℮ |
℮? | Cocok dengan nol atau satu elemen ℮ |
℮1|℮2 | Cocok dengan elemen ℮1 atau ℮2 |
℮[m] | Cocok dengan m buah elemen ℮ |
℮[m,] | Cocok dengan m buah elemen ℮ atau lebih |
℮[,n] | Cocok dengan nol buah elemen ℮ atau sampai n buah elemen ℮ |
℮[m,n] | Cocok dengan m buah elemen ℮ hingga n buah elemen ℮ |
[ - ] | Tanda – diddalm kurung siku menyatakan jangkauan, contoh : [a-e] berarti [abcde] |
[:karakter:] | Karakter menyatakan suatu jangkauan karakter seperti numeric, alphabet, hingga karakter heksadesimal |
Bila anda sudah mengetahui simbol-simbol tersebut maka selanjutnya kita akan mempraktikan beberapa simbol-simbol di atas ke dalam Query.
Contoh 1:
Menampilkan semua yang berawalan dengan Di pada field tertentu.
Perintah:
Select * from nama_tabel where nama_field REGEXP ‘^di’;
Penulisan dalam tanda(‘’) sebenarnya tidak harus ditulis dengan huruf besar karena hasilnya akan sama saja.
Contoh 2:
Menampilkan semua yang berakhiran ri pada field tertentu.
Perintah:
Select * from nama_tabel where nama_field REGEXP ‘ri$’;
Contoh 3:
Menampilkan semua mengandung ma, diikuti dengan sebuah sebarang karakter,dan kemudian diikuti dengan apada suatu field.
Perintah:
Select * from nama_tabel where nama_field REGEXP ‘ma.a’;
Contoh 4:
Menampilkan semua pegawai yang berawalan T, atau R, atau N.
Perintah:
Select * from nama_tabel where nama_field REGEXP ‘^[TRN]’;
Contoh 5:
Menampilakan semua yang tidak berawalan T,R, ataupun N.
Perintah:
Select * from nama_tabel where nama_field REGEXP ‘^[^TRN]’;
Contoh 6:
Menampilkan semua yang mengandung 2 buah deretan a.
Perintah:
Select * from nama_tabel where nama_field REGEXP ‘a{2}’;
Contoh 7:
Menampilkan semua yang mengandung an atau na.
Perintah:
Select * from nama_tabel where nama_field REGEXP ‘na|an’;
Contoh 8:
Menampilkan semua yang berawalan d dan mengandung ra.
Perintah:
Select * from nama_tabel where nama_field REGEXP ‘^d.*ra’;
Contoh 9:
Menampilkan semua yang berawalan d dan berakhiran dengan i.
Perintah:
Select * from nama_tabel where nama_field REGEXP ‘^d.*i$’;
Contoh 10:
Menampilkan semua yang berawalan r dan mengandung paling tidak sebuah i.
Perintah:
Select * from nama_tabel where nama_field REGEXP ‘^r.*I’;
Contoh 11:
Menampilkan semua yang berawalan r dan mengandung huruf a dan n yang bisa terletak di mana saja.
Perintah:
Select * from nama_tabel where nama_field REGEXP ‘r.*a.*n’;
Silahkan mencoba contoh-contoh yang diatas , semoga tutorial kali ini bermanfaat, lihat juga tutorial lainnya hanya disini!! Terima kasih!!
0 Response to "cara penggunaan REGEXP"
Post a Comment