题解 | 电话号码格式校验

电话号码格式校验

https://www.nowcoder.com/practice/2c2453e909c04c29a04c11e9d6b2c769

select *
from contacts
where phone_number regexp '^[1-9][0-9]{9}$|^[1-9][0-9]{2}-[0-9]{3}-[0-9]{4}$'
order by id ASC

'^[1-9][0-9]{9}$|^[1-9][0-9]{2}-[0-9]{3}-[0-9]{4}$'

这个正则表达式的作用如下:

  • ^ 表示匹配字符串的开头,$ 表示匹配字符串的结尾,确保整个字符串都符合指定的模式。
  • [1-9] 表示电话号码的第一位不能是 0,必须是 1 到 9 之间的数字。
  • [0-9]{9} 表示接下来的 9 位可以是任意数字,与开头的 [1-9] 组合形成一个完整的 10 位数字电话号码。
  • | 是正则表达式的“或”操作符,用于分隔两种不同的匹配模式。
  • ^[1-9][0-9]{2}-[0-9]{3}-[0-9]{4}$ 表示电话号码可以是以 “-” 分隔的格式,其中第一部分是 3 位数字,第二部分是 3 位数字,第三部分是 4 位数字。

ASC 表示按照元素进行升序

DESC为按照元素进行降序

全部评论
用这个写太复杂了,sql优化起来太麻烦了
点赞 回复 分享
发布于 06-17 23:10 安徽

相关推荐

Lorn的意义:你这种岗位在中国现在要么牛马天天加班,要么关系户进去好吃好喝,8年时间,真的天翻地覆了,对于资本来说你就说一头体力更好的牛马,哎,退伍没有包分配你真的亏了。
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
9
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务