📜  HSQLDB-正则表达式

📅  最后修改于: 2020-11-27 05:10:31             🧑  作者: Mango


HSQLDB支持一些特殊的符号,用于基于正则表达式和REGEXP运算符符的模式匹配操作。

以下是模式表,可以与REGEXP运算符一起使用。

Pattern What the Pattern Matches
^ Beginning of the string
$ End of the string
. Any single character
[…] Any character listed between the square brackets
[^…] Any character not listed between the square brackets
p1|p2|p3 Alternation; matches any of the patterns p1, p2, or p3
* Zero or more instances of the preceding element
+ One or more instances of the preceding element
{n} n instances of the preceding element
{m,n} m through n instances of the preceding element

让我们尝试不同的示例查询来满足我们的要求。看一下以下给定的查询。

尝试使用此查询查找名称以’^ 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].*');

执行上述查询后,您将收到以下输出。

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