HSQLDB 正则表达式
HSQLDB 支持基于正则表达式和 REGEXP 运算符进行模式匹配操作的一些特殊符号。
以下是模式表,可以与REGEXP运算符一起使用。
图案 |
模式匹配的内容 |
^ |
字符串的开头 |
$ |
字符串结束 |
. |
任意单个字符 |
[...] |
方括号之间列出的任何字符 |
[^...] |
方括号内未列出的任何字符 |
p1|p2|p3 |
交替;匹配任何模式 p1、p2 或 p3 |
* |
零个或多个前面元素的实例 |
+ |
前一个元素的一个或多个实例 |
{n} |
n 个前一个元素的实例 |
{m,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].*');
执行上述查询后,您将收到以下输出。
+-----------------+
| author |
+-----------------+
| Abdul S |
| Ajith kumar |
+-----------------+