Mysql 使用sql从字符串中提取电话号码

Mysql 使用sql从字符串中提取电话号码,mysql,sql,sql-server,regex,sql-server-2008,Mysql,Sql,Sql Server,Regex,Sql Server 2008,实际上我想把电话号码串起来。在一些网站上,它提到使用此正则表达式() 但它在正常的sql查询上不起作用。以下是语法: REGEXP_LIKE (mystring, '^(\+\d{1,2}\s)?\(?\d{3}\)?[\s.-]\d{3}[\s.-]\d{4}$') 我在这里做错了什么?\d和\s在MySQL中不存在。使用[[:digit:][]或[0-9]和[:space:][]或[:blank:][]或简单地使用 这里还固定了一些其他事项: str REGEXP '^([+][0-9]{

实际上我想把电话号码串起来。在一些网站上,它提到使用此正则表达式()

但它在正常的sql查询上不起作用。以下是语法:

REGEXP_LIKE (mystring, '^(\+\d{1,2}\s)?\(?\d{3}\)?[\s.-]\d{3}[\s.-]\d{4}$')

我在这里做错了什么?

\d和\s在MySQL中不存在。使用
[[:digit:][]
[0-9]
[:space:][]
[:blank:][]
或简单地使用

这里还固定了一些其他事项:

str REGEXP '^([+][0-9]{1,2})?([(][0-9]{3}[)]|[0-9]{3})[-. ][0-9]{4}$'

我希望这个链接可以帮助你。请检查一下,请考虑在当前查询中发布实际错误或错误结果。<代码> ReXExpLIX < /COD>是Oracle函数。它在MySQL和SQL Server中不可用。说到这里,你用的是什么数据库?它们是不同的产品。
str REGEXP '^([+][0-9]{1,2})?([(][0-9]{3}[)]|[0-9]{3})[-. ][0-9]{4}$'