oracle 判断字段是否为是数字 regexp_like用法 正则表达式

oracle 判断字段是否为是数字 regexp_like用法 正则表达式

ID:11519765

大小:25.50 KB

页数:3页

时间:2018-07-12

oracle 判断字段是否为是数字 regexp_like用法 正则表达式_第1页
oracle 判断字段是否为是数字 regexp_like用法 正则表达式_第2页
oracle 判断字段是否为是数字 regexp_like用法 正则表达式_第3页
资源描述:

《oracle 判断字段是否为是数字 regexp_like用法 正则表达式》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、oracle判断字段是否为是数字regexp_like用法正则表达式ORACLTTNND2010-07-1510:12:28阅读303评论0  字号:大中小 订阅/*ORACLE中的支持正则表达式的函数主要有下面四个:1,REGEXP_LIKE:与LIKE的功能相似2,REGEXP_INSTR:与INSTR的功能相似3,REGEXP_SUBSTR:与SUBSTR的功能相似4,REGEXP_REPLACE:与REPLACE的功能相似它们在用法上与OracleSQL函数LIKE、INSTR、SUBSTR和REPLACE用法相同,但是它们使用

2、POSIX正则表达式代替了老的百分号(%)和通配符(_)字符。POSIX正则表达式由标准的元字符(metacharacters)所构成:'^'匹配输入字符串的开始位置,在方括号表达式中使用,此时它表示不接受该字符集合。'$'匹配输入字符串的结尾位置。如果设置了RegExp对象的Multiline属性,则$也匹配''或'r'。'.'匹配除换行符之外的任何单字符。'?'匹配前面的子表达式零次或一次。'+'匹配前面的子表达式一次或多次。'*'匹配前面的子表达式零次或多次。'

3、'指明两项之间的一个选择。例子'^([a-z]+

4、[0-9]+

5、)$'表示所有小写字母或数字组合成的字符串。'()'标记一个子表达式的开始和结束位置。'[]'标记一个中括号表达式。'{m,n}'一个精确地出现次数范围,m=<出现次数<=n,'{m}'表示出现m次,'{m,}'表示至少出现m次。um匹配num,其中num是一个正整数。对所获取的匹配的引用。字符簇:[[:alpha:]]任何字母。[[:digit:]]任何数字。[[:alnum:]]任何字母和数字。[[:space:]]任何白字符。[[:upper:]]任何大写字母。[[:lower:]]任何小写字母。[[:punct:]]任何标点

6、符号。[[:xdigit:]]任何16进制的数字,相当于[0-9a-fA-F]。各种操作符的运算优先级转义符(),(?:),(?=),[]圆括号和方括号*,+,?,{n},{n,},{n,m}限定符^,$,anymetacharacter位置和顺序

7、*/--创建表createtablefzq(idvarchar(4),valuevarchar(10));--数据插入insertintofzqvalues('1','1234560');insertintofzqvalues('2','1234560');insertintofzqval

8、ues('3','1b3b560');insertintofzqvalues('4','abc');insertintofzqvalues('5','abcde');insertintofzqvalues('6','ADREasx');insertintofzqvalues('7','12345');insertintofzqvalues('8','adcde');insertintofzqvalues('9','adc,.de');insertintofzqvalues('10','1B');insertintofzqvalues('

9、10','abcbvbnb');insertintofzqvalues('11','11114560');insertintofzqvalues('11','11124560');--regexp_like--查询value中以1开头60结束的记录并且长度是7位select*fromfzqwherevaluelike'1____60';select*fromfzqwhereregexp_like(value,'1....60');--查询value中以1开头60结束的记录并且长度是7位并且全部是数字的记录。--使用like就不是很好实现

10、了。select*fromfzqwhereregexp_like(value,'1[0-9]{4}60');--也可以这样实现,使用字符集。select*fromfzqwhereregexp_like(value,'1[[:digit:]]{4}60');--查询value中不是纯数字的记录select*fromfzqwherenotregexp_like(value,'^[[:digit:]]+$');--查询value中不包含任何数字的记录。select*fromfzqwhereregexp_like(value,'^[^[:dig

11、it:]]+$');--查询以12或者1b开头的记录.不区分大小写。select*fromfzqwhereregexp_like(value,'^1[2b]','i');--查询以12或者1b开头的记录.区

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。