1

我想要一些关于以下正则表达式的帮助。

00  should be replaced by Null
01  should be left as it is
0   should be replaced by Null

如果有一个 0 或两个 0,那么它们应该被 Null 替换

我的尝试是

select regexp_replace('0','^0',NULL) from dual

但我的代码对 01 不起作用

得到这个工作使用

select regexp_replace('01','^0(0)?',NULL) from dual
4

1 回答 1

2

这行得通吗?

select regexp_replace('0','^0+$',NULL) from dual

我相信这应该用 NULL 替换只包含 0 的字符串。

我从这里得到了 oracle 正则表达式语法。

如果您只想更新一个或两个零的字符串,请使用以下命令:

select regexp_replace('0','^0{1,2}$',NULL) from dual

或者

select regexp_replace('0','^0(0)?$',NULL) from dual
于 2012-05-03T08:26:48.247 回答