Oracle 10G:PL/SQL正规表达式(正则表达式)手册

本文介绍了Oracle 10G中PL/SQL的正则表达式,包括字符类[:<class>:]的使用,圆括号与方括号的区别,正则表达式的重复操作符,以及Oracle正则表达式在数据验证和模式匹配中的应用。通过实例展示了如何使用正则表达式进行字符串匹配和替换,强调了正则表达式的强大功能及其在SQL和PL/SQL中的作用。
摘要由CSDN通过智能技术生成


<strong><span style="font-size:24px;">小结:</span></strong>
<span style="font-size:14px;">1、
REGEXP_LIKE (first_name, 'ss')相当于</span>
<span style="font-size:14px;">first_name    like  ‘%ss%’
</span>
<span style="font-size:14px;">而</span>
<span style="font-size:14px;">first_name    like  ‘ss’相当于</span>
<span style="font-size:14px;">first_name    = ‘ss’</span>

2、

[:<class>:]表示一个字符类,并匹配该类中的任何字符,例如,[:alpha:]匹配任何字母字符。

若是在方括号表达式中使用^,即[^[:<class>:]],就是说使用 ^ 对该表达式取非,此时它表示不接受该字符集合,如[^[:digit:]],表示不是为数字的字符。


3、圆括号和方括号的区别

'( )' 标记一个子表达式的开始和结束位置。
'[]' 标记一个中括号表达式。

(voy),就表示voy字符串

[voy],表示v、o、y这三字符中的一个,即[voy]等价于[v|o|y]

像(v|oy),则表示v和oy。

注释:

'|' 指明两项之间的一个选择。例子'^([a-z]+|[0-9]+)$'表示所有小写字母或数字组合成的字符串。


4、

阅读一个Oracle 正则表达式  ,就要以(子)表达式为中心:

一个(子)表达式可以有多个返回值,例如,(v|oy),有两个返回值,分别为v和oy。

量词(或叫重复操作符)是来修饰(子)表达式,即以(子)表达式为中心量词如*,匹配 0 次或更多次;{m, n},至少匹配 m 次但不超过 n 次。

除了量词外的其他操作符也都是来修饰(子)表达式,即以(子)表达式为中心,如|、\。



5、 Oracle 正则表达式相关书籍

Alice Rischert (ar280@yahoo.com) 是哥伦比亚大学计算机技术与应用系的数据库应用程序开发和设计方向的主席。她编写了Oracle SQL交互手册 2(Prentice Hall,2002)和即将推出的Oracle SQL示例 (Prentice Hall,2003)。Rischert 拥有超过 15 年的经验在财富 100 强公司内担任数据库设计师、DBA 和项目主管,并且她自从 Oracle version 5 起就一直使用 Oracle 产品。


有关 Oracle 正则表达式中受 Perl 影响的扩展的更多信息,请参阅《Oracle 数据库应用程序开发人员指南 — 基础 10g第 2 版(10.2)》第 4 章“使用 Oracle 数据库中的正则表达式”。


更多详细内容,请参考:FrancoisLiger,Craig McQueen,Pal Wilton[刘乐亭译] C#字符串和正则表达式参考手册北京:清华大学出版社2003.2


</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值