REGEXP_LIKE()-funktionen i MySQL bruges til mønstermatchning. Det sammenligner, om de givne strenge matcher et regulært udtryk eller ej . Det returnerer 1, hvis strengene matcher det regulære udtryk og returnerer 0, hvis der ikke findes noget match.
Syntaks
Det følgende er en grundlæggende syntaks til at bruge denne funktion i MySQL :
REGEXP_LIKE (expression, pattern [, match_type])
Parameterforklaring
Forklaringen på REGEXP_LIKE() funktionsparametrene er:
udtryk: Det er en inputstreng, som vi udfører søgning på for at matche det regulære udtryk.
mønster: Det repræsenterer det regulære udtryk, som vi tester strengen for.
match_type: Det er en streng, der giver os mulighed for at forfine det regulære udtryk. Den bruger følgende mulige tegn til at udføre matchning.
Lad os forstå, hvordan vi kan bruge denne funktion i MySQL med forskellige eksempler.
Eksempel
Følgende erklæring forklarer det grundlæggende eksempel på REGEXP_LIKE-funktionen i MySQL.
mysql> SELECT REGEXP_LIKE ('England or America', 'l.nd') AS Result;
I dette eksempel kan det regulære udtryk angive et hvilket som helst tegn i stedet for prikken. Derfor får vi et match her. Så denne funktion returnerer 1 for at angive et match.
Nedenstående sætning er et andet eksempel, hvor inputstrengen ikke matcher det givne regulære udtryk.
mysql> SELECT REGEXP_LIKE ('MCA', 'BCA') AS Result;
Her er outputtet:
tyre vs okse
Nedenstående sætning er et andet eksempel, hvor det angivne regulære udtryk søger om strengen slutter med de givne tegn eller ej:
mysql> SELECT REGEXP_LIKE ('England Netherland Scotland', 'and$') AS Result;
Her er resultatet:
Vi kan give en ekstra parameter til at forfine det regulære udtryk ved at bruge matchtype-argumenterne. Se nedenstående eksempel, hvor vi specificerer en case-sensitive og match uafhængig af store og små bogstaver:
mysql> SELECT REGEXP_LIKE ('India Indonesia', '^in', 'i') AS 'Case-Insensitive', REGEXP_LIKE ('India Indonesia', '^in', 'c') AS 'Case-Sensitive';
Her er resultatet: