加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

正则 - 提取子串

发布时间:2020-12-14 02:24:47 所属栏目:百科 来源:网络整理
导读:11g版本: WITH t AS ( SELECT '((:1*:1)+:2)/:10' col FROM dual UNION ALL SELECT '((:3*:0)+:323)/:1213lse12lj' FROM dual ) SELECT col, regexp_substr(col, '[0-9]+' , 1, LEVEL ) AS dd, LEVEL AS position FROM t CONNECT BY LEVEL =regexp_count(co

11g版本:

 
 
  1. WITHtAS
  2. (
  3. SELECT'((:1*:1)+:2)/:10'col
  4. FROMdual
  5. UNIONALL
  6. SELECT'((:3*:0)+:323)/:1213lse12lj'FROMdual
  7. )
  8. SELECTcol,
  9. regexp_substr(col,
  10. '[0-9]+',
  11. 1,
  12. LEVEL)ASdd,
  13. LEVELASposition
  14. FROMt
  15. CONNECTBYLEVEL<=regexp_count(col,
  16. '[0-9]+')AND
  17. PRIORdbms_random.VALUEISNOTNULLAND
  18. PRIORcol=col
  19. ORDERSIBLINGSBYcol;

10g版本:

 
 
  1. WITHtAS
  2. (
  3. SELECT'((:1*:1)+:2)/:10'col
  4. FROMdual
  5. UNIONALL
  6. SELECT'((:3*:0)+:323)/:1213lse12lj'FROMdual
  7. )
  8. SELECTcol,
  9. LEVELASposition
  10. FROMt
  11. CONNECTBYLEVEL<=(length(regexp_replace(col,
  12. '[0-9]+',
  13. '~~~'))-
  14. length(REPLACE(regexp_replace(col,
  15. '[0-9]+',
  16. '~~~'),
  17. '~~~')))/3AND
  18. PRIORdbms_random.VALUEISNOTNULLAND
  19. PRIORcol=col
  20. ORDERSIBLINGSBYcol;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读