網站首頁 編程語言 正文
日常開發中,判斷郵箱是少不了的,這個我以**C#**為例,來寫一個判斷方法,正則表達式是通用的,CV就可以
首先引入正則需要使用的命名空間
//正則驗證引用 using System.Text.RegularExpressions;
判斷是否為QQ郵箱
/// <summary> /// 驗證QQ郵箱 /// </summary> /// <param name="mail">郵箱</param> /// <returns></returns> public static bool CheckMail(string mail) { string str = @"^[1-9][0-9]{4,}@qq.com$"; Regex mReg = new Regex(str); if (mReg.IsMatch(mail)) { return true; } return false; }
這里是使用正則判斷是否為QQ郵箱方法,正則表達式在下方
^[1-9][0-9]{4,}@qq.com$
判斷是否為郵箱
這里我們先了解一下常用的郵箱域名后綴,目前除了許多個人企業郵箱和域名郵箱,基本上正常郵箱都是com和net域名。
所以我們的正則表達式直接限制成@**.com
結尾或者@**.net
結尾.
/// <summary> /// 驗證是否為郵箱 /// </summary> /// <param name="mail"></param> /// <returns></returns> public static bool CheckAllMail(string mail) { string str = @"^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(com|cn|net)$"; Regex mReg = new Regex(str); if (mReg.IsMatch(mail)) { return true; } return false; }
下面是正則表達式
^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(com|cn|net)$
我這里設置的域名有com、cn和net,也就是說,允許域名為com、cn和net的個人郵箱匹配哦。
補充:C#正則表達式(Regex類)
在 C# 語言中使用正則表達式時要用到 Regex 類,該類在 System.Text.RegularExpressions 名稱空間中。
Regex類表示.NET Framework 正則表達式引擎。?它可用于快速分析大量的文本來查找特定的字符模式;若要提取、 編輯、 替換或刪除文本子字符串;并將提取的字符串添加到集合以生成報表。
在 Regex 類中使用 IsMatch 方法判斷所匹配的字符串是否滿足正則表達式的要求。
【實例】在 Main 方法中從控制臺輸入一個郵箱,使用正則表達式判斷其正確性。
根據題目要求,在本例中郵箱驗證的正則表達式的寫法是包含 @,在 @ 前面是字母或者數字、下畫線,在 @ 后面也是字母或者數字、下畫線,并且字母后面要含有.,在 . 后面還要加上字母或者數字、下畫線。具體的代碼如下。
class Program { static void Main(string[] args) { Console.WriteLine("請輸入一個郵箱"); string email = Console.ReadLine(); Regex regex = new Regex(@"^(\w)+(\.\w)*@(\w)+((\.\w+)+)$"); if (regex.IsMatch(email)) { Console.WriteLine("郵箱格式正確。"); } else { Console.WriteLine("郵箱格式不正確。"); } } }
總結
原文鏈接:https://juejin.cn/post/7078545052414410759
相關推薦
- 2022-09-13 iOS封裝倒計時按鈕HLCountDownButton示例詳解_IOS
- 2022-12-10 OpenMP深入剖析reduction子句教程_C 語言
- 2022-09-20 C#?Winform實現圓角無鋸齒按鈕_C#教程
- 2022-12-26 使用python如何對圖片進行壓縮_python
- 2022-09-02 C語言sizeof與字符串處理與動態內存分配及main函數參數詳解_C 語言
- 2022-08-17 Win2008系統搭建DHCP服務器_win服務器
- 2022-06-13 Go語言學習之運算符使用詳解_Golang
- 2022-06-19 C語言簡明講解類型轉換的使用與作用_C 語言
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支