在plsql中为ASCII 32到126进行验证

时间:2019-02-21 13:34:37

标签: plsql

我希望我的plsql代码接受32到126之间的ASCII值 我正在尝试:

SELECT REGEXP_REPLACE(COLUMN,'[^[:ascii:]],'')

但这在Oracle中似乎是一个问题吗?

1 个答案:

答案 0 :(得分:0)

您可以取消:print:来删除不可打印的字符。

SELECT c,
       regexp_replace(c,
                      '[^[:print:]]',
                      '')
  FROM (SELECT listagg(chr(LEVEL),
                       '') within GROUP(ORDER BY LEVEL) AS c
          FROM dual
        CONNECT BY LEVEL <= 256);