Як співпадають регулярні вирази бази даних MySQL? Використання регулярного виразу MySQL

База даних 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 у блозі Чень Вейляна, щоб отримувати останні оновлення!

🔔 Станьте першим, хто отримає цінний «Посібник із використання інструменту штучного інтелекту маркетингу контенту ChatGPT» у верхньому каталозі каналу! 🌟
📚 Цей посібник має величезну цінність. 🌟Це рідкісна можливість, не пропустіть її! ⏰⌛💨
Поділіться та вподобайте, якщо вам подобається!
Ваші публікації та лайки є нашою постійною мотивацією!

 

发表 评论

Ваша електронна адреса не буде опублікована. 必填 项 已 用 * Етикетка

прокрутіть наверх