logo

MySQL REGEXP_LIKE() Funktion

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.

    c:Det repræsenterer en matchning, der skelner mellem store og små bogstaver.jeg:Det repræsenterer en matching, der ikke er følsom over for store og små bogstaver.m:Det repræsenterer en multi-line mode, der genkender linjeterminatorer i strengen. Som standard matcher denne funktion linjeterminatorer i starten og slutningen af ​​strengen.n:Det bruges til at ændre . (dot) tegn for at matche linjeterminatorer. Som standard stopper den ved slutningen af ​​en linje.i:Det repræsenterer linjeafslutninger, der kun er Unix, og som kun genkender nylinjetegnet af ., ^ og $ match-operatorerne.

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.

MySQL regexp_like funktion

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
MySQL regexp_like funktion

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:

MySQL regexp_like funktion

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:

MySQL regexp_like funktion