MySQL'deki REGEXP_LIKE() işlevi kalıp eşleştirme için kullanılır. BT verilen dizelerin normal ifadeyle eşleşip eşleşmediğini karşılaştırır . Dizeler normal ifadeyle eşleşirse 1 değerini döndürür, eşleşme bulunmazsa 0 değerini döndürür.
Sözdizimi
Aşağıda bu işlevi kullanmak için temel bir sözdizimi verilmiştir. MySQL :
REGEXP_LIKE (expression, pattern [, match_type])
Parametre Açıklaması
REGEXP_LIKE() işlevi parametrelerinin açıklaması şöyledir:
ifade: Normal ifadeyle eşleşmek için arama yaptığımız bir giriş dizesidir.
model: Dizeyi test ettiğimiz normal ifadeyi temsil eder.
eşleşme türü: Düzenli ifadeyi hassaslaştırmamızı sağlayan bir dizedir. Eşleştirmeyi gerçekleştirmek için aşağıdaki olası karakterleri kullanır.
Bu fonksiyonu MySQL'de nasıl kullanabileceğimizi çeşitli örneklerle anlayalım.
Örnek
Aşağıdaki ifade MySQL'deki REGEXP_LIKE fonksiyonunun temel örneğini açıklamaktadır.
mysql> SELECT REGEXP_LIKE ('England or America', 'l.nd') AS Result;
Bu örnekte normal ifade nokta yerine herhangi bir karakteri belirtebilir. Bu nedenle burada bir maç alacağız. Yani bu fonksiyon bir eşleşmeyi belirtmek için 1 değerini döndürür.
Aşağıdaki ifade, giriş dizesinin verilen normal ifadeyle eşleşmediği başka bir örnektir.
mysql> SELECT REGEXP_LIKE ('MCA', 'BCA') AS Result;
İşte çıktı:
gigabayt ile megabayt arasındaki fark
Aşağıdaki ifade, belirtilen normal ifadenin arandığı başka bir örnektir dizenin verilen karakterlerle bitip bitmediği:
mysql> SELECT REGEXP_LIKE ('England Netherland Scotland', 'and$') AS Result;
İşte sonuç:
Eşleme türü bağımsız değişkenlerini kullanarak normal ifadeyi hassaslaştırmak için ek bir parametre sağlayabiliriz. Bir belirttiğimiz aşağıdaki örneğe bakın. harfe duyarlı Ve büyük/küçük harfe duyarlı olmayan eşleşme:
mysql> SELECT REGEXP_LIKE ('India Indonesia', '^in', 'i') AS 'Case-Insensitive', REGEXP_LIKE ('India Indonesia', '^in', 'c') AS 'Case-Sensitive';
İşte sonuç: