当前位置: 首页 > article >正文

[每日一练]MySQL中的正则表达式的应用

#该题目来源于力扣:

1517. 查找拥有有效邮箱的用户 - 力扣(LeetCode)

题目要求 :

表: Users

+---------------+---------+
| Column Name   | Type    |
+---------------+---------+
| user_id       | int     |
| name          | varchar |
| mail          | varchar |
+---------------+---------+
user_id 是该表的主键(具有唯一值的列)。
该表包含了网站已注册用户的信息。有一些电子邮件是无效的。
 

编写一个解决方案,以查找具有有效电子邮件的用户。

一个有效的电子邮件具有前缀名称和域,其中:

 前缀 名称是一个字符串,可以包含字母(大写或小写),数字,下划线 '_' ,点 '.' 和/或破折号 '-' 。前缀名称 必须 以字母开头。
域 为 '@leetcode.com' 。
以任何顺序返回结果表。

思路流程:

  1. 首先,字符串的开头必须是英文字符串,可以表达为[a-zA-Z],由于是第一个字符的要求,写到这里就结束了
  2. 在开头字符串后,给出了字符串的限定要求:可以多次出现英文字符以及数字字符,字符“-”“.”“_”同样可以多次出现,我们可以表示为:[a-zA-Z0-9\\.\\_\\-]*来表达可以出现多次的字符串限定范围
  3. 最后的域名要求必须是力扣网站:@leetcode.com只出现一次,我们可以直接将它放在我们的正则表达式之后,但是注意,我们需要对“.”进行转义
  4. 最终我们用 “^……$”来将字符串的范围限定

代码实现:

# Write your MySQL query statement below
SELECT *
FROM Users
WHERE mail regexp '^[a-zA-Z][a-zA-Z0-9\\.\\_\\-]*@leetcode\\.com$'


http://www.kler.cn/news/315012.html

相关文章:

  • Day 9:1306 跳跃游戏III
  • 神经网络构建原理(以MINIST为例)
  • Java | Leetcode Java题解之第416题分割等和子集
  • 国内可以使用的ChatGPT服务【9月持续更新】
  • 828华为云征文 | 云服务器Flexus X实例:多智能体对话框架 AutoGen 部署和实例运行
  • 重修设计模式-结构型-门面模式
  • python 实现binomial coefficient二项式系数算法
  • excel 单元格一直显示年月日
  • Contact Form 7最新5.9.8版错误修复方案
  • ClickHouse 与 Quickwit 集成实现高效查询
  • 适用于QF的存档系统
  • react的事件绑定
  • vulnhub(12):bob 1.0.1(gpg文件解密)
  • @PostConstruct
  • <刷题笔记> 力扣236题——二叉树的公共祖先
  • 全面详尽的 PHP 环境搭建教程
  • C++ 元编程
  • 18938 汉诺塔问题
  • 《深度学习》PyTorch 常用损失函数原理、用法解析
  • 【电力系统】基于遗传算法的33节点电力系统无功优化及MATLAB实现
  • LeetCode337. 打家劫舍III
  • springbootKPL比赛网上售票系统
  • Maven 项目无法下载某个依赖
  • 论 JAVA 集合框架中 接口与类的关系
  • 注册信息安全专业人员(CISP)和网络安全的联系与区别
  • FLStudio21Mac版flstudio v21.2.1.3430简体中文版下载(含Win/Mac)
  • windows cuda12.1 pytorch gpu环境配置
  • js之遍历方法
  • windows@文件系统链接@快捷方式@快捷键方式和符号链接及其对比
  • 本地提权【笔记总结】