Regex Oracle正则表达式匹配空格

Regex Oracle正则表达式匹配空格,regex,oracle,whitespace,Regex,Oracle,Whitespace,我正在尝试使用正则表达式更改oracle中的一个值: input: <input id="f_alta">13/10/2016 10:10:10</input> output: 13/10/2016 10:10:10 输入:13/10/2016 10:10:10 输出:13/10/2016 10:10:10 好吧,为了进入节点,我使用:([\s0-9/:]+)但不起作用,不管怎样,我使用:([0-9/:]+)并起作用,为什么不使用第一个呢 我正在使用oracle

我正在尝试使用正则表达式更改oracle中的一个值:

input: <input id="f_alta">13/10/2016  10:10:10</input>
output: 13/10/2016  10:10:10
输入:13/10/2016 10:10:10
输出:13/10/2016 10:10:10
好吧,为了进入节点,我使用:([\s0-9/:]+)但不起作用,不管怎样,我使用:([0-9/:]+)并起作用,为什么不使用第一个呢

我正在使用oracle sql developer进行测试

例如:

不工作:

select REGEXP_REPLACE('<input id="f_alta">13/10/2016  10:10:10</input>', '<input id="f_alta">([\s0-9/:]+)</input>', '\1' ) from dual
从双变量中选择REGEXP_REPLACE('13/10/2016 10:10:10','([\s0-9/:]+),'\1')
工作:

select REGEXP_REPLACE('<input id="f_alta">13/10/2016  10:10:10</input>', '<input id="f_alta">([ 0-9/:]+)</input>', '\1' ) from dual
从双变量中选择REGEXP_REPLACE('13/10/2016 10:10:10','([0-9/:]+),'\1')

由于
\s
是一个类似Perl的构造,并且Oracle正则表达式基于POSIX,因此使用POSIX字符类
[:space://code>(包括垂直空格)或
[:blank://code>(仅匹配空格和制表符)更安全

例如,使用

([[:space:]0-9/:]+)
请记住始终在括号表达式中使用POSIX字符类(因此,要匹配一个字母字符,请使用
[:alpha:][]
,即类的名称必须在冒号和双方括号中)