oracle正则表达式的用法
<SPAN style="FONT-SIZE: 18px">Oracle 正则表达式函数-REGEXP_SUBSTR 使用例子 .
5个参数
第一个是输入的字符串
第二个是正则表达式
第三个是标识从第几个字符开始正则表达式匹配。(默认为1)
第四个是标识第几个匹配组。(默认为1)
第五个是是取值范围:
i:大小写不敏感;
c:大小写敏感;
n:点号 . 不匹配换行符号;
m:多行模式;
x:扩展模式,忽略正则表达式中的空白字符。
全部测试数据
SQL> select * from test_reg_substr;
A
-----------------------------------
ABC123XYZ
ABC123XYZ456
<Name>Edward</Name>
检索中间的数字
SQL> SELECT
2 REGEXP_SUBSTR(a,'[0-9]+')
3 FROM
4 test_reg_substr
5 WHERE
6 REGEXP_LIKE(a, '[0-9]+');
REGEXP_SUBSTR(A,'[0-9]+')
---------------------------------
123
123
检索中间的数字(从第一个字母开始匹配,找第2个匹配项目)
SQL> SELECT
2 NVL(REGEXP_SUBSTR(a,'[0-9]+',1, 2), '-') AS a
3 FROM
4 test_reg_substr
5 WHERE
6 REGEXP_LIKE(a, '[0-9]+');
A
------------------------------------------------------
-
456
取得“字符集合”
SQL> SELECT
2 REGEXP_SUBSTR(a, '\w+')
3 FROM
4 test_reg_substr
5 WHERE
6 REGEXP_LIKE(a, '\w+');
REGEXP_SUBSTR(A,'\W+')
-------------------------------
ABC123XYZ
ABC123XYZ456
Name
取得“字符集合”(从第一个字母开始匹配,找第2个匹配项目)
SQL> SELECT
2 NVL(REGEXP_SUBSTR(a, '\w+',1, 2), '-') AS a
3 FROM
4 test_reg_substr
5 WHERE
6 REGEXP_LIKE(a, '\w+');
A
---------------------------------------------------
-
-
Edward
</SPAN>
oracle正则表达式的用法的更多相关文章
- oracle正则表达式regexp_like的用法详解
oracle正则表达式regexp_like的用法详解 /*ORACLE中的支持正则表达式的函数主要有下面四个:1,REGEXP_LIKE :与LIKE的功能相似2,REGEXP_INSTR :与IN ...
- Oracle正则表达式函数:regexp_like、regexp_substr、regexp_instr、regexp_replace
Oracle正则表达式函数:regexp_like.regexp_substr.regexp_instr.regexp_replace --去掉所有特殊字符,只剩字母 SELECT REGEXP ...
- ORACLE 中ROWNUM用法总结(转)
ORACLE 中ROWNUM用法总结! 对于 Oracle 的 rownum 问题,很多资料都说不支持>,>=,=,between...and,只能用以上符号(<.<=.!=) ...
- ORACLE 中ROWNUM用法总结!
ORACLE 中ROWNUM用法总结! 对于 Oracle 的 rownum 问题,很多资料都说不支持>,>=,=,between...and,只能用以上符号(<.<=.!=) ...
- [转]ORACLE的ProC用法讲解
pro*c是高级的用法,OCI是oracle的基础用法 如何编译.pc文件: proc code=cpp parse=none iname=filename.pc oname=filename.cp ...
- 【转】关于oracle with as用法
原文链接:关于oracle with as用法 with as语法–针对一个别名with tmp as (select * from tb_name) –针对多个别名with tmp as (se ...
- Oracle正则表达式
Oracle正则表达式 正则表达式具有强大.便捷.高效的文本处理功能.能够添加.删除.分析.叠加.插入和修整各种类型的文本和数据.Oracle从10g开始支持正则表达式. 下面通过一些例子来说明 ...
- Oracle CASE WHEN 用法介绍[Z]
Oracle CASE WHEN 用法介绍 1. CASE WHEN 表达式有两种形式 --简单Case函数 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ...
- Oracle 正则表达式函数-REGEXP_REPLACE
背景 当初写oracle的一个存储过程,以前不知道sql里也有正则表达式,关于正则表达式教程很多了,这里只是记录下Oracle也有这个功能,下次再有类似需求用这个处理的确方便很多. 想起存储过程,就想 ...
随机推荐
- singleton pattern的推荐实现
一.单例模式的C#实现: (1)使用double-checked locking的方式: public sealed class Singleton { private static volatile ...
- scala中的面向对象定义类,构造函数,继承
我们知道scala中一切皆为对象,函数也是对象,数字也是对象,它是一个比java还要面向对象的语言. 定义scala的简单类 class Point (val x:Int, val y:Int) 上面 ...
- 参数table_open_cache
table_cache 参数设置表高速缓存的数目.每个连接进来,都会至少打开一个表缓存.因此, table_cache 的大小应与 max_connections 的设置有关.例如,对于 200 个并 ...
- Hibernate的检索方式
Hibernate的检索方式 检索方式(查询的方式) 导航对象图检索方式: 根据已经加载的对象导航到其他对象 Customer customer = (Customer)session.get(Cus ...
- MIT 6.828 JOS学习笔记8. Exercise 1.4
Lab 1 Exercise 4 阅读关于C语言的指针部分的知识.最好的参考书自然是"The C Programming Language". 阅读5.1到5.5节.然后下载poi ...
- HDU 3642 Get The Treasury (线段树扫描线)
题意:给你一些长方体,问你覆盖三次及以上的体积有多大 首先我们观察x轴y轴一样很大,但是z轴很小,所以我们可以枚举z轴(-500,500),注意我们枚举的是每一段长度为一的z轴的xy轴的面积而不是点. ...
- js实现复制到剪贴板功能,兼容所有浏览器
http://www.cnblogs.com/PeunZhang/p/3324727.html https://github.com/zeroclipboard/ZeroClipboard 复制链接到 ...
- PDA移动POS终端系统,实现专柜或店铺的收货、零售、盘点通过无线网络直接连接总部中央数据库,实现高效安全的移动供应链管理
利用PDA移动终端,实现专柜或店铺的收货.零售.盘点等一体化操作,通过无线网络直接连接总部中央数据库,实现高效安全的移动供应链管理. · PDA订货会应用解决方案利用PDA或电脑系统,在订货会现场直接 ...
- abort 用法讨论
同事说: TT***.factary( procedure() begin .... abort; .... end)大家在TTask中不建议用abort因为难以控制,我测试 ...
- 我的c++学习(11)数组和指针
使用数组显示斐波那契数列 #include "stdafx.h" using namespace std; #include<iostream> int _tmain( ...