Oracle SQL-匹配电话格式
我想查找与以下模式不匹配的数据:Oracle SQL-匹配电话格式,sql,regex,oracle,select,Sql,Regex,Oracle,Select,我想查找与以下模式不匹配的数据: 任意数量的分离器 2个数字 任意数量的分离器 2个数字 任意数量的分离器 2个数字 任意数量的分离器 2个数字 任意数量的分离器 2个数字 任意数量的分离器 为此,我使用此查询,但它似乎不起作用: select distinct regexp_replace(phonenumber, '[0-9]', '') from coord where REGEXP_LIKE(phonenumber, '^[ ./]{*}[0-9]{2}[ ./]{*}[0-9]
- 任意数量的分离器
- 2个数字
- 任意数量的分离器
- 2个数字
- 任意数量的分离器
- 2个数字
- 任意数量的分离器
- 2个数字
- 任意数量的分离器
- 2个数字
- 任意数量的分离器
select distinct regexp_replace(phonenumber, '[0-9]', '')
from coord
where REGEXP_LIKE(phonenumber, '^[ ./]{*}[0-9]{2}[ ./]{*}[0-9]{2}[ ./]{*}[0-9]{2}[ ./]{*}[0-9]{2}[ ./]{*}[0-9]{2}[ ./]{*}$')
我做错了什么?假设您要搜索与您的模式匹配的记录,只需将您的
{*}
替换为*
:
SELECT DISTINCT regexp_replace(phonenumber, '[0-9]', '')
FROM coord
WHERE regexp_like(phonenumber,
'^[ ./]*[0-9]{2}[ ./]*[0-9]{2}[ ./]*[0-9]{2}[ ./]*'
||'[0-9]{2}[ ./]*[0-9]{2}[ ./]*$')
如果要选择与此模式不匹配的记录,请执行以下操作:
SELECT DISTINCT regexp_replace(phonenumber, '[0-9]', '')
FROM coord
WHERE NOT regexp_like(phonenumber,
'^[ ./]*[0-9]{2}[ ./]*[0-9]{2}[ ./]*[0-9]{2}[ ./]*'
||'[0-9]{2}[ ./]*[0-9]{2}[ ./]*$')
假设您希望搜索与您的模式匹配的记录,只需将您的
{*}
替换为*
:
SELECT DISTINCT regexp_replace(phonenumber, '[0-9]', '')
FROM coord
WHERE regexp_like(phonenumber,
'^[ ./]*[0-9]{2}[ ./]*[0-9]{2}[ ./]*[0-9]{2}[ ./]*'
||'[0-9]{2}[ ./]*[0-9]{2}[ ./]*$')
如果要选择与此模式不匹配的记录,请执行以下操作:
SELECT DISTINCT regexp_replace(phonenumber, '[0-9]', '')
FROM coord
WHERE NOT regexp_like(phonenumber,
'^[ ./]*[0-9]{2}[ ./]*[0-9]{2}[ ./]*[0-9]{2}[ ./]*'
||'[0-9]{2}[ ./]*[0-9]{2}[ ./]*$')
结果是什么
regexp\u replace(电话号码,[0-9],”)
对我来说似乎很可疑。你有空字符串列表吗?结果是什么regexp\u replace(电话号码,[0-9],”)
对我来说似乎很可疑。你有空字符串的列表吗?