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

Published At
Categories with 数据库类
Tagged with
comments powered by Disqus