RegEx查找具有所有相同数字的数字

时间:2014-06-16 20:12:52

标签: sql regex oracle

我正在使用Oracle数据库,并希望编写一个REGEXP_LIKE表达式,找到所有数字相同的任何数字,例如' 999999999'或者' 777777777'没有指定字段的长度。此外,我希望它能够识别字符,例如' aaaaa'。

在指定字段长度时,我能够使用它:

select * from table1
where regexp_like (field1, '^([0-9a-z])\1\1\1\1\1\1\1\1');

但我希望它可以在任何字段长度内执行此操作。

例如,如果字段包含' 7777771',我不希望在结果中看到它。

2 个答案:

答案 0 :(得分:6)

你快到了。你只需要锚定正则表达式的结尾。

^([0-9a-z])\1+$

答案 1 :(得分:6)

试试这个:

^([0-9a-z])\1+$

Live demo