La funció REGEXP_LIKE() a MySQL s'utilitza per a la concordança de patrons. Això compara si les cadenes donades coincideixen o no amb una expressió regular . Retorna 1 si les cadenes coincideixen amb l'expressió regular i retorna 0 si no es troba cap coincidència.
Sintaxi
A continuació es mostra una sintaxi bàsica per utilitzar aquesta funció MySQL :
REGEXP_LIKE (expression, pattern [, match_type])
Explicació del paràmetre
L'explicació dels paràmetres de la funció REGEXP_LIKE() són:
expressió: És una cadena d'entrada en la qual realitzem la cerca de la concordança de l'expressió regular.
patró: Representa l'expressió regular per a la qual estem provant la cadena.
tipus_concordança: És una cadena que ens permet afinar l'expressió regular. Utilitza els següents caràcters possibles per fer la concordança.
Entendrem com podem utilitzar aquesta funció a MySQL amb diversos exemples.
Exemple
La declaració següent explica l'exemple bàsic de la funció REGEXP_LIKE a MySQL.
mysql> SELECT REGEXP_LIKE ('England or America', 'l.nd') AS Result;
En aquest exemple, l'expressió regular pot especificar qualsevol caràcter en lloc del punt. Per tant, aquí aconseguirem un partit. Per tant, aquesta funció retorna 1 per indicar una coincidència.
La instrucció següent és un altre exemple on la cadena d'entrada no coincideix amb l'expressió regular donada.
mysql> SELECT REGEXP_LIKE ('MCA', 'BCA') AS Result;
Aquí teniu la sortida:
exemples d'arbres binaris
La instrucció següent és un altre exemple on cerca l'expressió regular especificada si la cadena acaba amb els caràcters donats o no:
mysql> SELECT REGEXP_LIKE ('England Netherland Scotland', 'and$') AS Result;
Aquí teniu el resultat:
Podem proporcionar un paràmetre addicional per refinar l'expressió regular utilitzant els arguments del tipus de concordança. Vegeu l'exemple següent on estem especificant a cas delicat i concordança sense distinció entre majúscules i minúscules:
mysql> SELECT REGEXP_LIKE ('India Indonesia', '^in', 'i') AS 'Case-Insensitive', REGEXP_LIKE ('India Indonesia', '^in', 'c') AS 'Case-Sensitive';
Aquí teniu el resultat: