早教吧作业答案频道 -->其他-->
用oracle正则表达式1.号码尾数后4位含3个以上(含3个)相同号码----如AAAA、BAAA、AAAA,注A不等于B2.号码尾数后4位按顺序连续递增或递减----如ABCD、DCBA,注A、B、C、D均不相等3.号码尾数后4位排序
题目详情
用oracle正则表达式
1.号码尾数后4位含3个以上(含3个)相同号码----如AAAA、BAAA、AAAA,注A不等于B
2.号码尾数后4位按顺序连续递增或递减----如ABCD、DCBA,注A、B、C、D均不相等
3.号码尾数后4位排序有规律且规律重复----如ABAB、AABB、BAAB,注A不等于B
4.号码尾数后8位,其中有6位以上数字排序有规律且规律重复次数超过2次以上(含2次)的号码----AAABBB**、**AABAAB、**ABBABB、**ABCABC、*AABAAB*、*ABBABB*、*ABCABC*、AABAAB**、ABBABB**、ABCABC**,注A、B、C不相等
1.号码尾数后4位含3个以上(含3个)相同号码----如AAAA、BAAA、AAAA,注A不等于B
2.号码尾数后4位按顺序连续递增或递减----如ABCD、DCBA,注A、B、C、D均不相等
3.号码尾数后4位排序有规律且规律重复----如ABAB、AABB、BAAB,注A不等于B
4.号码尾数后8位,其中有6位以上数字排序有规律且规律重复次数超过2次以上(含2次)的号码----AAABBB**、**AABAAB、**ABBABB、**ABCABC、*AABAAB*、*ABBABB*、*ABCABC*、AABAAB**、ABBABB**、ABCABC**,注A、B、C不相等
▼优质解答
答案和解析
CREATE TABLE test_phone (
phone_number varchar(20)
);
INSERT INTO test_phone
SELECT '13812345678' FROM dual UNION ALL
SELECT '13812345566' FROM dual UNION ALL
SELECT '13812345656' FROM dual UNION ALL
SELECT '13812345556' FROM dual UNION ALL
SELECT '13812346666' FROM dual UNION ALL
SELECT '13855661234' FROM dual UNION ALL
SELECT '13856561234' FROM dual UNION ALL
SELECT '13855561234' FROM dual UNION ALL
SELECT '13866661234' FROM dual;
-- AAAA 结尾的
SELECT
*
FROM
test_phone
WHERE
REGEXP_LIKE(REVERSE(phone_number), '^(\d)\1\1\1');
PHONE_NUMBER
----------------------------------------
13812346666
-- AABB 结尾的
SELECT
*
FROM
test_phone
WHERE
REGEXP_LIKE(REVERSE(phone_number), '^(\d)\1([^\1])\2')
AND NOT REGEXP_LIKE(REVERSE(phone_number), '^(\d)\1\1\1');
PHONE_NUMBER
----------------------------------------
13812345656
-- ABAB 结尾的
SELECT
*
FROM
test_phone
WHERE
REGEXP_LIKE(REVERSE(phone_number), '^(\d)(\d)\1\2')
AND NOT REGEXP_LIKE(REVERSE(phone_number), '^(\d)\1\1\1');
PHONE_NUMBER
----------------------------------------
13812345656
递增的用正则表达式处理很麻烦. 我就只列几个简单的吧.
CREATE TABLE test_phone (
phone_number varchar(20)
);
INSERT INTO test_phone
SELECT '13812345678' FROM dual UNION ALL
SELECT '13812345566' FROM dual UNION ALL
SELECT '13812345656' FROM dual UNION ALL
SELECT '13812345556' FROM dual UNION ALL
SELECT '13812346666' FROM dual UNION ALL
SELECT '13855661234' FROM dual UNION ALL
SELECT '13856561234' FROM dual UNION ALL
SELECT '13855561234' FROM dual UNION ALL
SELECT '13866661234' FROM dual;
-- AAAA 结尾的
SELECT
*
FROM
test_phone
WHERE
REGEXP_LIKE(REVERSE(phone_number), '^(\d)\1\1\1');
PHONE_NUMBER
----------------------------------------
13812346666
-- AABB 结尾的
SELECT
*
FROM
test_phone
WHERE
REGEXP_LIKE(REVERSE(phone_number), '^(\d)\1([^\1])\2')
AND NOT REGEXP_LIKE(REVERSE(phone_number), '^(\d)\1\1\1');
PHONE_NUMBER
----------------------------------------
13812345656
-- ABAB 结尾的
SELECT
*
FROM
test_phone
WHERE
REGEXP_LIKE(REVERSE(phone_number), '^(\d)(\d)\1\2')
AND NOT REGEXP_LIKE(REVERSE(phone_number), '^(\d)\1\1\1');
PHONE_NUMBER
----------------------------------------
13812345656
 看了 用oracle正则表达式1....的网友还看了以下:
同学聚会约定中午12时准时到会早到的计为正迟到的计为负结果最早到的同学记为+2h最迟到的同学为—0 2020-04-07 …
请问,英语动词+ed,+ing的规则是否完全相同?我指的规则相同,是指何时双写最后一个字母等规则, 2020-05-14 …
1.十几乘十几:口诀:头乘头,尾加尾,尾乘尾.例:12×14=?1×1=12+4=62×4=812 2020-06-09 …
个位相乘,不够两位数要用0占位.2.头相同,尾互补(尾相加等于10):什么意思?1.十几乘十几:口 2020-06-20 …
用oracle正则表达式1.号码尾数后4位含3个以上(含3个)相同号码----如AAAA、BAAA 2020-06-22 …
在“模拟探究鱼尾鳍的作用”说法正确的是()A.模拟实验结果最准确B.只需要直接观察鱼尾鳍的作用C. 2020-06-25 …
一炮艇在湖面上匀速行驶,突然从船头和船尾同时水平向前和向后各发射一发炮弹,设两炮弹质量相同,相对于 2020-07-14 …
首尾长达l千米的大部队正在沙漠中以匀速前进,有道紧急命令交传令兵从队列的尾部出发,骑快马送到排头的值 2020-12-17 …
5人排成一排,如果甲必须站在排头或排尾,而乙不能站在排头或排尾,则不同的选法种数为? 2021-01-12 …
5人排成一排,如果甲必须站在排头或排尾,而乙不能站在排头或排尾,则不同的选法种数为? 2021-01-12 …