Каталог статей
База данных 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, чтобы быть в курсе последних обновлений!
📚 Это руководство содержит огромную ценность. 🌟Это редкая возможность, не упустите ее! ⏰⌛💨
Делитесь и ставьте лайк, если хотите!
Ваш обмен и лайки - наша постоянная мотивация!