Di MariaDB, RLIKE
operator digunakan untuk menentukan apakah string cocok atau tidak dengan ekspresi reguler. Ini adalah sinonim untuk REGEXP
.
Jika string cocok dengan ekspresi reguler yang diberikan, hasilnya adalah 1
, jika tidak maka 0
.
Sintaks
Sintaksnya seperti ini:
expr RLIKE pat
Dimana expr
adalah string input dan pat
adalah ekspresi reguler yang digunakan untuk menguji string.
Contoh
Berikut adalah contoh cara menggunakan operator ini dalam SELECT
pernyataan:
SELECT 'Tweet' RLIKE '^Tw.*t$';
Hasil:
+-------------------------+ | 'Tweet' RLIKE '^Tw.*t$' | +-------------------------+ | 1 | +-------------------------+
Dalam hal ini, nilai yang dikembalikan adalah 1
yang berarti bahwa string input cocok dengan ekspresi reguler. Secara khusus, kami menetapkan bahwa string input harus dimulai dengan Tw dan diakhiri dengan t (ini karena kita memulai pola dengan ^Tw
dan diakhiri dengan t$
). .
bagian menentukan karakter apa pun, dan *
menentukan bahwa itu bisa menjadi nol untuk sejumlah karakter (apa saja). Jadi .*
artinya tidak boleh ada karakter, satu karakter, atau banyak karakter di antara awal dan akhir.
Inilah yang terjadi jika kita membuang *
:
SELECT 'Tweet' RLIKE '^Tw.t$';
Hasil:
+------------------------+ | 'Tweet' RLIKE '^Tw.t$' | +------------------------+ | 0 | +------------------------+
Hasil yang dikembalikan adalah 0
yang berarti tidak ada kecocokan. Ini karena .
hanya menentukan satu instance dari karakter apa pun. String input kami berisi dua instance.
Berikut adalah beberapa permutasi:
SELECT
'Twet' RLIKE '^Tw.t$' AS "Twet",
'Twit' RLIKE '^Tw.t$' AS "Twit",
'Twt' RLIKE '^Tw.t$' AS "Twt",
'Tw.t' RLIKE '^Tw.t$' AS "Tw.t";
Hasil:
+------+------+-----+------+ | Twet | Twit | Twt | Tw.t | +------+------+-----+------+ | 1 | 1 | 0 | 1 | +------+------+-----+------+