原文:
-- 不是數字select * from dual where
not regexp_like('1不是數字1', '^[0-9]+\.[0-9]*$')
-- 是數字
select * from dual where
regexp_like('1.1', '^[0-9]+\.[0-9]*$')
應用場景分析:
今天要處理中間庫資料不符合格式要求的資料,很自然的想到了正規表示式
在網上查到了regexp_like函式,可以很方便的查詢出符合格式要求的資料
可是怎麼查詢不匹配正則的資料呢?
正則不支援多個字元取非,問題變得糾結了
蒐羅了半天,終於找到了上面的稻草
oracle 正規表示式
with temp as select br.777 1 a from dual union all select bs.6 175 a from dual union all select d.140 supplement 1 a from dual union all select e.191 ...
oracle正規表示式
在資料庫可直接執行下面語句,但在程式中不能執行,regexp like t.ipaddress,25 0 5 2 0 4 0 9 01 0 9 0 9 25 0 5 2 0 4 0 9 01 0 9 0 9 報錯有特殊字元 在句末再加乙個 改為 regexp like t.ipaddress,25 ...
oracle正規表示式
oracle 10g支援正規表示式的四個新函式分別是 regexp like regexp instr regexp substr 和regexp replace。它們使用posix 正規表示式代替了老的百分號 和萬用字元 字元。特殊字元 匹配輸入字串的開始位置,在方括號表示式中使用,此時它表示不接...