摘要:DB2实现正则表达式(一)
正则表达式用于查找和替换字符串中的模式。正则表达式是用某种语法定义的,正则表达式引擎采用这种语法并将它与字符串进行比较。引擎返回字符串是否与语法匹配的指示;也即,该字符串是否包含能够从该语法派生的子串。此外,引擎还能够返回匹配的子串。术语“模式(pattern)”用来表示语法。
| — 二中择一
[ ] — 分组
* — 多次出现(也匹配零次出现)
+ — 多次出现(至少一次)
? — 随意的出现次数
\\\\ — 反斜杠
实现UDF
CREATE FUNCTION Expension1(pattern VARCHAR(2048), string CLOB(10M))
RETURNS INTEGER
SPECIFIC regexSimple
EXTERNAL NAME ExpensionUdf!Expension1Simple
LANGUAGE C
PARAMETER STYLE DB2SQL
DETERMINISTIC
NOT FENCED
RETURNS NULL ON NULL INPUT
NO SQL
NO EXTERNAL ACTION
ALLOW PARALLEL;
实现清单-实例
SELECT Exp FROM strTable
WHERE Expension1(\\w* = (\\d|0x00);, Exp) = 1