Hsqldb 简明教程
HSQLDB - Regular Expressions
HSQLDB 支持一些特殊符号,用于基于正则表达式和 REGEXP 运算符进行模式匹配操作。
以下是模式表,可与 REGEXP 运算符一起使用。
Pattern |
What the Pattern Matches |
^ |
Beginning of the string |
$ |
End of the string |
. |
Any single character |
[…] |
方括号内列出的任何字符 |
[^…] |
方括号内未列出的任何字符 |
p1 |
p2 |
p3 |
交替;与模式 p1、p2 或 p3 中的任何一个匹配 |
* |
前一个元素的零个或多个实例 |
+ |
前一个元素的一个或多个实例 |
{n} |
前一个元素的 n 个实例 |
{m,n} |
前一个元素的 m 到 n 个实例 |
Example
让我们尝试不同的示例查询来满足我们的要求。查看以下给定的查询。
试用此查询以查找所有名称以“^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 |
+-----------------+