Каталог статей
База даних MySQLЯк збігається регулярний вираз?MySQL використання регулярного виразу
Регулярні вирази MySQL
У попередніх розділах ми дізналися, що MySQL може бути ПОДОБАЄТЬСЯ...% для нечіткої відповідності.
MySQL також підтримує зіставлення інших регулярних виразів Оператор REGEXP використовується в MySQL для зіставлення регулярних виразів.
Якщо ви знаєте PHP або Perl, це досить просто, оскільки зіставлення регулярних виразів MySQL подібне до цих сценаріїв.
Звичайні шаблони в наведеній нижче таблиці можна застосувати до оператора REGEXP.
Режим | опис |
---|---|
^ | Відповідає початку вхідного рядка.^ також відповідає позиції після '\n' або '\r', якщо встановлено властивість Multiline об'єкта RegExp. |
$ | Збігається з кінцем введеного рядка.Якщо встановлено властивість Multiline об’єкта RegExp, $ також відповідає позиції перед «\n» або «\r». |
. | Відповідає будь-якому одному символу, крім "\n".Щоб відповідати будь-якому символу, включаючи '\n', використовуйте такий шаблон, як '[.\n]'. |
[...] | колекція персонажів.Збігається з будь-яким із символів, що містяться.Наприклад, "[abc]" відповідатиме "plai«а» в н». |
[^…] | Набір негативних символів.Відповідає будь-якому символу, який не міститься.Наприклад, «[^abc]» відповідатиме «p» у «простому». |
p1|p2|p3 | Відповідає p1, p2 або p3.Наприклад, "z|їжа" відповідатиме "z" або "їжа". "(z|f)ood" відповідає "zood" або "food". |
* | Збігається з попереднім підвиразом нуль або більше разів.Наприклад, zo* відповідатиме як "z", так і "zoo". * еквівалентно {0,}. |
+ | Збігається з попереднім підвиразом один або кілька разів.Наприклад, "zo+" відповідатиме "zo" та "zoo", але не "z". + еквівалентно {1,}. |
{не} | n є цілим невід’ємним числом.Збігається рівно n разів.Наприклад, "o{2}" не збігатиметься з "o" у "Боб", але відповідатиме обом o у "food". |
{n,m} | І m, і n є невід’ємними цілими числами, де n <= m.Збігається принаймні n і не більше m разів. |
Екземпляр
Розуміючи наведені вище регулярні вимоги, ми можемо писати оператори SQL з регулярними виразами відповідно до наших власних вимог.Нижче ми наведемо кілька невеликих прикладів (назва таблиці: person_tbl), щоб поглибити наше розуміння:
Знайти всі дані, що починаються з «st» у полі імені:
mysql> SELECT name FROM person_tbl WHERE name REGEXP '^st';
Знайдіть усі дані, які закінчуються на «ок» у полі імені:
mysql> SELECT name FROM person_tbl WHERE name REGEXP 'ok$';
Знайдіть усі дані, що містять рядок «mar» у полі імені:
mysql> SELECT name FROM person_tbl WHERE name REGEXP 'mar';
Знайдіть у полі імені всі дані, які починаються з голосної букви або закінчуються рядком «ок»:
mysql> SELECT name FROM person_tbl WHERE name REGEXP '^[aeiou]|ok$';
Блог Hope Chen Weiliang ( https://www.chenweiliang.com/ ) поділився «Як зіставити регулярні вирази бази даних MySQL? MySQL regexp like usage" допоможе вам.
Ласкаво просимо поділитися посиланням на цю статтю:https://www.chenweiliang.com/cwl-492.html
Ласкаво просимо до каналу Telegram у блозі Чень Вейляна, щоб отримувати останні оновлення!
📚 Цей посібник має величезну цінність. 🌟Це рідкісна можливість, не пропустіть її! ⏰⌛💨
Поділіться та вподобайте, якщо вам подобається!
Ваші публікації та лайки є нашою постійною мотивацією!