MySQL REGEXP – 删除空格和非数字字符

前端之家收集整理的这篇文章主要介绍了MySQL REGEXP – 删除空格和非数字字符前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我想在MySQL数据库搜索电话号码.

目前有这个查询

SELECT person FROM people WHERE phone_number RLIKE '123456789'

它不会发现:

(123) 456 789
(12) 456789
123 456 789
etc etc

在我的MySQL查询中是否可以删除所有内容并留下数字?

我还想搜索删除所有空格,只留下数字和字符,还删除所有字符,只留下数字和空格.不知道这一切是多么容易.

感谢您的帮助!

最佳答案
怎么样:

SELECT
    person,replace(replace(replace(replace(phone_number,' ',''),'(',')','-','') as phone_number
FROM
    people
WHERE
    phone_number RLIKE '^[+]?[-() 0-9]+$';

匹配以加号开头的数字,它们可能包含连字符,括号和空格.但除了一开始就没有加号.也没有人物.还删除了连字符,空格和括号.

猜你在找的MySQL相关文章