Учебники

HSQLDB — Регулярные выражения

HSQLDB поддерживает некоторые специальные символы для операции сопоставления с образцом на основе регулярных выражений и оператора REGEXP.

Ниже приведена таблица паттернов, которую можно использовать вместе с оператором REGEXP.

Шаблон Что шаблон соответствует
^ Начало строки
$ Конец строки
, Любой отдельный персонаж
[…] Любой символ, указанный в квадратных скобках
[^ …] Любой символ, не указанный в квадратных скобках
p1 | p2 | p3 Чередование; соответствует любому из паттернов p1, p2 или p3
* Ноль или более экземпляров предыдущего элемента
+ Один или несколько экземпляров предыдущего элемента
{П} n экземпляров предыдущего элемента
{Т, п} от m до n экземпляров предыдущего элемента

пример

Давайте попробуем различные примеры запросов, чтобы удовлетворить наши требования. Посмотрите на следующие данные запросы.

Попробуйте этот запрос, чтобы найти всех авторов, чье имя начинается с ‘^ A’.

SELECT author FROM tcount_tbl WHERE REGEXP_MATCHES(author,'^A.*');

После выполнения вышеуказанного запроса вы получите следующий вывод.

+-----------------+
|     author      |
+-----------------+
|     Abdul S     |
|    Ajith kumar  |
+-----------------+

Попробуйте этот запрос, чтобы найти всех авторов, чье имя заканчивается на ‘ul $’.

SELECT author FROM tcount_tbl WHERE REGEXP_MATCHES(author,'.*ul$');

После выполнения вышеуказанного запроса вы получите следующий вывод.

+-----------------+
|     author      |
+-----------------+
|    John Poul    |
+-----------------+

Попробуйте этот запрос, чтобы найти всех авторов, чье имя содержит «th».

SELECT author FROM tcount_tbl WHERE REGEXP_MATCHES(author,'.*th.*');

После выполнения вышеуказанного запроса вы получите следующий вывод.

+-----------------+
|     author      |
+-----------------+
|    Ajith kumar  | 
|     Abdul S     |
+-----------------+

Попробуйте этот запрос, чтобы найти всех авторов, чье имя начинается с гласной (a, e, i, o, u).

SELECT author FROM tcount_tbl WHERE REGEXP_MATCHES(author,'^[AEIOU].*');

После выполнения вышеуказанного запроса вы получите следующий вывод.