在字符串中间使用 charlist 通配符

Using charlist wildcard in the middle of the string

我正在尝试 运行 一个查询,其中 charlist wildcard 在字符串中间定义如下:

SELECT * FROM table WHERE key LIKE 'A___[AB]________',

当然是行不通的。这里我想查询13个字母的字符串,开头为'A',第6位为'A'或'B'。我不想在此搜索中使用关键字 "OR",因为稍后我必须 运行 更复杂的查询,我想保持简单。

有什么建议吗?

LIKE 不理解 Oracle 中的正则表达式。使用 REGEXP_LIKE 代替。 http://docs.oracle.com/cd/B12037_01/server.101/b10759/conditions018.htm

你的正则表达式应该是这样的'^A.{4}[AB].{7}$'