欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

正则表达式,寻找大牛

更新时间: 2014-01-05 02:14:11 责任编辑: Author_N1

 

求一个正则表达式,寻找大牛

--参考方法--
看到题目第一个想法 但是效率很一般  肯定还有其他方法的..


with t1 as
(
     select 1 tid,'23' tno from dual union all
     select 2 tid,'35' tno from dual union all
     select 3 tid,'567' tno from dual union all
     select 4 tid,'745' tno from dual union all
     select 5 tid,'6' tno from dual union all
     select 6 tid,'555' tno from dual union all
     select 7 tid,'7891' tno from dual union all
     select 8 tid,'12345' tno from dual union all
     select 9 tid,'123342313' tno from dual union all
     select 10 tid,'2468' tno from dual
)

select distinct tid,tno
from 
(
select distinct tid,tno,substr(tno,level+1,1)-substr(tno,level,1) c1
from t1
where length(tno) between 2 and 9
connect by level < length(tno)
order by tid
)
where c1 <> 1
order by tid


     tid    tno
--------------------------------
1 2 35
2 4 745
3 6 555
4 7 7891
5 9 123342313
6 10 2468



--参考方法--
select * from t where (length(id) between 2 and 10
and not regexp_like('0123456789',t.tno))
or length(id)>=11
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:14:11
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/7320/
本文WWW.DOC100.NET DOC100.NET版权所有。