SQL-每日一題【1517. 查找擁有有效郵箱的用戶】

題目

表:?Users

編寫一個解決方案,以查找具有有效電子郵件的用戶。

一個有效的電子郵件具有前綴名稱和域,其中:

  1. ?前綴?名稱是一個字符串,可以包含字母(大寫或小寫),數字,下劃線?'_'?,點?'.'?和/或破折號?'-'?。前綴名稱?必須?以字母開頭。
  2. ?為?'@leetcode.com'?。

以任何順序返回結果表。

結果的格式如以下示例所示:

示例 1:

?

?

?

解題思路

前置知識

Regexpp()

模糊匹配,包含特定字符串

查找content字段中包含“車友俱樂部”的記錄

select * from club_content where content regexp ‘車友俱樂部’

此時的regexp與like的以下用法是等同的

select * from club_content where content like ‘%車友俱樂部%’

模糊匹配,以特定字符串開頭

查找content字段中以“車友”開頭的記錄

select * from club_content where content regexp ‘^車友’

此時的regexp與like的以下用法是等同的

select * from club_content where content like ‘車友%’

模糊匹配,以特定字符串結尾

查找content字段中以“車友”結尾的記錄

select * from club_content where content regexp ‘車友$’

此時的regexp與like的以下用法是等同的

select * from club_content where content like ‘%車友’

模糊匹配,或關系

查找content字段中包含“心得”、“分享”或“技術貼”

select * from club_content where content REGEXP ‘心得|分享|技術貼’

模糊匹配,不包含單個字符

查找content字段中不包含“車”字、“友”字的記錄

select * from club_content where content REGEXP [^車友]

這個結果跑出來一看大吃一驚,竟然把所有記錄給跑出來,這是為什么呢?
因為一旦加了這個方括號"[]",它就把里面的內容拆成單個的字符再匹配,它會逐個字符去匹配判斷是不是等于“車”,或者是不是等于“友“,返回的結果是一組0、1的邏輯值。

如果想匹配不包含特定字符串,該怎么實現呢?

模糊匹配,不包含特定字符串

查找content字段不包含“車友”字符串的記錄

select * from club_content where content not REGEXP ‘車友’

1.題目要求我們?查找具有有效電子郵件的用戶,也就是(前綴?名稱是一個字符串,可以包含字母(大寫或小寫),數字,下劃線?'_'?,點?'.'?和/或破折號?'-'?。前綴名稱?必須?以字母開頭。?為?'@leetcode.com'?。)對于這種題我們可以采用正則表達式進行匹配。

2.?^ 匹配以該字符后面的字符開頭的字符串,我們應該以字母開頭(^[a-zA-Z]),可以包含字母(大寫或小寫),數字,下劃線?'_'?,點?'.'?和/或破折號?'-'([a-zA-Z0-9_.-]*),*是一個量詞,表示匹配前面的元素零次或多次。

3.必須以域結尾?為?'@leetcode.com',(@leetcode[.]com$),然后我們將三個條件組合在一起就得到了(regexp '^[a-zA-Z][a-zA-Z0-9_.-]*@leetcode[.]com$')這里要注意特殊符號的轉義,如果我們將特殊符號放在[]中就不用再進行轉義了,否則要在前面加上‘//’。

代碼實現

select *
from Users
where mail regexp '^[a-zA-Z][a-zA-Z0-9_.-]*@leetcode[.]com$'

測試結果

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:
http://www.pswp.cn/news/35229.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/35229.shtml
英文地址,請注明出處:http://en.pswp.cn/news/35229.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

RT-Thread Smart 用戶態開發體驗

背景 RT-Thread Smart 是基于 RT-Thread 操作系統上的混合操作系統,它把應用從內核中獨立出來,形成獨立的用戶態應用程序,并具備獨立的地址空間。 自 V5.0.0 起,rt-smart 分支已合并至 master 分支上,下載 rt-thread …

【學習】若依源碼(前后端分離版)之 “ 上傳圖片功能實現”

大型紀錄片:學習若依源碼(前后端分離版)之 “ 上傳圖片功能實現” 前言前端部分后端部分結語 前言 圖片上傳也基本是一個項目的必備功能了,所以今天和大家分享一下我最近在使用若依前后端分離版本時,如何實現圖片上傳…

數據結構和算法基礎

鞏固基礎,砥礪前行 。 只有不斷重復,才能做到超越自己。 能堅持把簡單的事情做到極致,也是不容易的。 java程序員要學習那些技能 : 作為一名Java程序員,要學習以下技能: Java編程語言:掌握Java編程語言的…

虛擬現實與增強現實技術的商業應用

章節一:引言 隨著科技的不斷發展,虛擬現實(Virtual Reality,簡稱VR)與增強現實(Augmented Reality,簡稱AR)技術正日益成為商業領域中的重要創新力量。這兩種技術為企業帶來了前所未…

Oracle將與Kubernetes合作推出DevOps解決方案!

導讀Oracle想成為云計算領域的巨頭,但它不是推出自己品牌的云DevOps軟件,而是將與CoreOS在Kubernetes端展開合作。七年前,Oracle想要成為Linux領域的一家重量級公司。于是,Oracle主席拉里埃利森(Larry Ellison&#xf…

阿里云Windows服務器怎么安裝多個網站?

本文阿里云百科介紹如何在Windows Server 2012 R2 64位系統的ECS實例上使用IIS服務器搭建多個Web站點。本教程適用于熟悉Windows操作系統,希望合理利用資源、統一管理站點以提高運維效率的用戶。比如,您可以在一臺云服務器上配置多個不同分類的博客平臺或…

wps設置一鍵標題字體和大小

參考 wps設置一鍵標題字體和大小:https://www.kafan.cn/A/7v5le1op3g.html 統一一鍵設置

docsify gitee 搭建個人博客

docsify & gitee 搭建個人博客 文章目錄 docsify & gitee 搭建個人博客1.npm 安裝1.1 在Windows上安裝npm:1.2 在macOS上安裝npm:1.3 linux 安裝npm 2. docsify2.1 安裝docsify2.2 自定義配置2.2.1 通過修改index.html,定制化開發頁面…

24屆近5年東南大學自動化考研院校分析

今天給大家帶來的是東南大學控制考研分析 滿滿干貨~還不快快點贊收藏 一、東南大學 學校簡介 東南大學是我國最早建立的高等學府之一,素有“學府圣地”和“東南學府第一流”之美譽。東南大學前身是創建于1902年的三江師范學堂。1921年經近代著名教育家…

數據結構-棧的實現(C語言版)

前言 棧是一種特殊的線性表,只允許在固定的一端進行插入和刪除的操作,進行數據插入和刪除的一端叫做棧頂,另一端叫做棧底。 棧中的數據元素遵循后進先出的的原則。 目錄 1.壓棧和出棧 2. 棧的實現 3.測試代碼 1.壓棧和出棧 壓棧&#xff…

C語言學習之函數的返回值

函數的返回值:所有函數的返回值都是通過return關鍵字返回的;返回一個基本類型的值:案例: int my_mod(int x,int y){return x % y;}返回一個地址:案例: int *func(int *p){return p;}返回全局變量的地址&a…

k8s 滾動更新控制(一)

在傳統的應用升級時,通常采用的方式是先停止服務,然后升級部署,最后將新應用啟動。這個過程面臨一個問題,就是在某段時間內,服務是不可用的,對于用戶來說是非常不友好的。而kubernetes滾動更新,…

數據庫的相關

ACID 事務的四大特性主要是:原子性(Atomicity)、一致性(Consistency)、隔離性(Isolation)、持久性(Durability)。 原子性(Atomicity) 原子性是…

【數據結構】二叉樹篇| 綱領思路01+刷題

博主簡介:努力學習的22級計算機科學與技術本科生一枚🌸博主主頁: 是瑤瑤子啦每日一言🌼: 所謂自由,不是隨心所欲,而是自我主宰。——康德 目錄 一、二叉樹刷題綱領二、刷題1、104. 二叉樹的最大深度2、 二叉…

react進階

react-virtualized的高階組件,Autosize可以使屏幕適配。使用render-props模式來獲取到AutoSizer組件暴露的width和height屬性。JSON.parse(JSON.stringify())不適用于有undefined的數據。 深拷貝的使用,不能使用在有undefined的數據中。有直接過濾undefi…

jacoco功能測試-代碼覆蓋率

1、下載 jacoco 官網地址:EclEmma - JaCoCo Java Code Coverage Library 2、拷貝 jar 包 下載好后,找到這兩個文件,然后找到被測項目 3、啟動 jacocoagent,監控被測項目 java -javaagent:jacocoagent.jarincludes*,outputtcp…

【Java】異常處理 之 使用Log4j

使用 Log4j 前面介紹了Commons Logging,可以作為“日志接口”來使用。而真正的“日志實現”可以使用Log4j。 Log4j是一種非常流行的日志框架,最新版本是2.x。 Log4j是一個組件化設計的日志系統,它的架構大致如下: log.info(&q…

linux0.95(VFS重點)源碼通俗解讀(施工中)

文件系統在磁盤中的體現 下面是磁盤的內容,其中i節點就是一個inode數組,邏輯塊就是數據塊可用于存放數據 操作系統通過將磁盤數據讀入到內存中指定的緩沖區塊來與磁盤交互,對內存中的緩沖區塊修改后寫回磁盤。 進程(task_struct * task[N…

Mysql中如果建立了索引,索引所占的空間隨著數據量增長而變大,這樣無論寫入還是查詢,性能都會有所下降,怎么處理?

索引所占空間的增長確實會對MySQL數據庫的寫入性能和查詢性能造成影響,這主要是由于索引數據過多時會導致磁盤I/O操作變得非常頻繁,從而使性能下降。為此,可以采取以下幾種方式來減緩這種影響: 1. 限制索引的大小:可以…

Netty框架技術文檔-基本概念

Netty: Home https://github.com/netty/netty 基本概念 NIO(Non-blocking I/O,非阻塞I/O):NIO是一種Java平臺的I/O模型,它使用Channel和Buffer來進行數據傳輸,而不是傳統的Stream。NIO模型可以處理大量并…