HSQLDB - Expressions régulières

HSQLDB prend en charge certains symboles spéciaux pour l'opération de correspondance de modèle basée sur des expressions régulières et l'opérateur REGEXP.

Voici le tableau des motifs, qui peut être utilisé avec l'opérateur REGEXP.

Modèle À quoi correspond le motif
^ Début de la chaîne
$ Fin de la chaîne
. Tout caractère unique
[...] Tout caractère répertorié entre les crochets
[^ ...] Tout caractère non répertorié entre les crochets
p1 | p2 | p3 Alternance; correspond à l'un des motifs p1, p2 ou p3
* Zéro ou plusieurs instances de l'élément précédent
+ Une ou plusieurs instances de l'élément précédent
{n} n instances de l'élément précédent
{m, n} m à n instances de l'élément précédent

Exemple

Essayons différents exemples de requêtes pour répondre à nos besoins. Jetez un œil aux requêtes suivantes.

Essayez cette requête pour trouver tous les auteurs dont le nom commence par «^ A».

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

Après l'exécution de la requête ci-dessus, vous recevrez la sortie suivante.

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

Essayez cette requête pour trouver tous les auteurs dont le nom se termine par «ul $».

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

Après l'exécution de la requête ci-dessus, vous recevrez la sortie suivante.

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

Essayez cette requête pour trouver tous les auteurs dont le nom contient «th».

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

Après l'exécution de la requête ci-dessus, vous recevrez la sortie suivante.

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

Essayez cette requête pour trouver tous les auteurs dont le nom commence par voyelle (a, e, i, o, u).

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

Après l'exécution de la requête ci-dessus, vous recevrez la sortie suivante.

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