Do dopasowywania wzorców używana jest funkcja REGEXP_LIKE() w MySQL. To porównuje, czy podane ciągi pasują do wyrażenia regularnego, czy nie . Zwraca 1, jeśli ciągi pasują do wyrażenia regularnego i zwraca 0, jeśli nie znaleziono żadnego dopasowania.
Składnia
Poniżej znajduje się podstawowa składnia użycia tej funkcji MySQL'a :
REGEXP_LIKE (expression, pattern [, match_type])
Wyjaśnienie parametrów
Wyjaśnienie parametrów funkcji REGEXP_LIKE() jest następujące:
wyrażenie: Jest to ciąg wejściowy, na podstawie którego przeprowadzamy wyszukiwanie dopasowania do wyrażenia regularnego.
wzór: Reprezentuje wyrażenie regularne, dla którego testujemy ciąg.
typ_dopasowania: Jest to ciąg znaków, który pozwala nam udoskonalić wyrażenie regularne. Do dopasowania używa następujących możliwych znaków.
Pozwól nam zrozumieć, jak możemy użyć tej funkcji w MySQL na różnych przykładach.
Przykład
Poniższa instrukcja wyjaśnia podstawowy przykład funkcji REGEXP_LIKE w MySQL.
mysql> SELECT REGEXP_LIKE ('England or America', 'l.nd') AS Result;
W tym przykładzie wyrażenie regularne może zamiast kropki podać dowolny znak. Dlatego tutaj otrzymamy dopasowanie. Zatem ta funkcja zwraca 1, aby wskazać dopasowanie.
Poniższa instrukcja jest kolejnym przykładem, w którym ciąg wejściowy nie pasuje do podanego wyrażenia regularnego.
mysql> SELECT REGEXP_LIKE ('MCA', 'BCA') AS Result;
Oto dane wyjściowe:
zmiana nazwy katalogu
Poniższa instrukcja jest kolejnym przykładem wyszukiwania określonego wyrażenia regularnego czy ciąg kończy się podanymi znakami, czy nie:
mysql> SELECT REGEXP_LIKE ('England Netherland Scotland', 'and$') AS Result;
Oto wynik:
Możemy podać dodatkowy parametr w celu uściślenia wyrażenia regularnego za pomocą argumentów typu dopasowania. Zobacz poniższy przykład, w którym określamy a wielkość liter ma znaczenie I dopasowanie bez uwzględniania wielkości liter:
mysql> SELECT REGEXP_LIKE ('India Indonesia', '^in', 'i') AS 'Case-Insensitive', REGEXP_LIKE ('India Indonesia', '^in', 'c') AS 'Case-Sensitive';
Oto wynik: