Как соотносятся регулярные выражения базы данных 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» в слове «обычный».
п1|п2|п3Соответствует p1, p2 или p3.Например, «z|food» будет соответствовать либо «z», либо «food». '(z|f)ood' соответствует "zood" или "food".
*Соответствует предыдущему подвыражению ноль или более раз.Например, zo* будет соответствовать как «z», так и «zoo». * эквивалентно {0,}.
+Соответствует предыдущему подвыражению один или несколько раз.Например, «zo+» будет соответствовать «zo» и «zoo», но не «z». + эквивалентно {1,}.
{п}n — целое неотрицательное число.Совпадает ровно n раз.Например, "о{2}" не будет соответствовать "о" в слове "Боб", но будет соответствовать обеим буквам "о" в слове "еда".
{n, m}И m, и n — неотрицательные целые числа, где n <= m.Соответствует не менее n раз и не более m раз.

Пример

Поняв приведенные выше обычные требования, мы можем писать операторы SQL с регулярными выражениями в соответствии с нашими собственными требованиями.Ниже мы приведем несколько небольших примеров (имя таблицы: person_tbl), чтобы углубить наше понимание:

Найдите все данные, начинающиеся с «st» в поле имени:

mysql> SELECT name FROM person_tbl WHERE name REGEXP '^st';

Найдите все данные, которые заканчиваются на «ok» в поле имени:

mysql> SELECT name FROM person_tbl WHERE name REGEXP 'ok$';

Найдите все данные, содержащие строку «mar» в поле имени:

mysql> SELECT name FROM person_tbl WHERE name REGEXP 'mar';

Найдите все данные в поле имени, которое начинается с гласной буквы или заканчивается строкой 'ok':

mysql> SELECT name FROM person_tbl WHERE name REGEXP '^[aeiou]|ok$';

Блог Хоуп Чен Вейлян ( https://www.chenweiliang.com/ ) поделился "Как сопоставить регулярные выражения базы данных MySQL? MySQL regexp как использование" поможет вам.

Добро пожаловать, чтобы поделиться ссылкой на эту статью:https://www.chenweiliang.com/cwl-492.html

Добро пожаловать на Telegram-канал блога Chen Weiliang, чтобы быть в курсе последних обновлений!

🔔 Будьте первым, кто получит ценное «Руководство по использованию инструмента искусственного интеллекта для контент-маркетинга ChatGPT» в верхнем каталоге канала! 🌟
📚 Это руководство содержит огромную ценность. 🌟Это редкая возможность, не упустите ее! ⏰⌛💨
Делитесь и ставьте лайк, если хотите!
Ваш обмен и лайки - наша постоянная мотивация!

 

发表 评论

Ваш электронный адрес не будет опубликован. 必填 项 已 用 * 标注

滚动 到 顶部