如何使用正則表達(dá)式判斷郵箱(以C#為例)
日常開(kāi)發(fā)中,判斷郵箱是少不了的,這個(gè)我以**C#**為例,來(lái)寫(xiě)一個(gè)判斷方法,正則表達(dá)式是通用的,CV就可以
首先引入正則需要使用的命名空間
//正則驗(yàn)證引用 using System.Text.RegularExpressions;
判斷是否為QQ郵箱
/// <summary>
/// 驗(yàn)證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郵箱方法,正則表達(dá)式在下方
^[1-9][0-9]{4,}@qq.com$判斷是否為郵箱
這里我們先了解一下常用的郵箱域名后綴,目前除了許多個(gè)人企業(yè)郵箱和域名郵箱,基本上正常郵箱都是com和net域名。
所以我們的正則表達(dá)式直接限制成@**.com結(jié)尾或者@**.net結(jié)尾.
/// <summary>
/// 驗(yàn)證是否為郵箱
/// </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;
}下面是正則表達(dá)式
^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(com|cn|net)$
我這里設(shè)置的域名有com、cn和net,也就是說(shuō),允許域名為com、cn和net的個(gè)人郵箱匹配哦。
補(bǔ)充:C#正則表達(dá)式(Regex類(lèi))
在 C# 語(yǔ)言中使用正則表達(dá)式時(shí)要用到 Regex 類(lèi),該類(lèi)在 System.Text.RegularExpressions 名稱(chēng)空間中。
Regex類(lèi)表示.NET Framework 正則表達(dá)式引擎。 它可用于快速分析大量的文本來(lái)查找特定的字符模式;若要提取、 編輯、 替換或刪除文本子字符串;并將提取的字符串添加到集合以生成報(bào)表。
在 Regex 類(lèi)中使用 IsMatch 方法判斷所匹配的字符串是否滿(mǎn)足正則表達(dá)式的要求。
【實(shí)例】在 Main 方法中從控制臺(tái)輸入一個(gè)郵箱,使用正則表達(dá)式判斷其正確性。
根據(jù)題目要求,在本例中郵箱驗(yàn)證的正則表達(dá)式的寫(xiě)法是包含 @,在 @ 前面是字母或者數(shù)字、下畫(huà)線(xiàn),在 @ 后面也是字母或者數(shù)字、下畫(huà)線(xiàn),并且字母后面要含有.,在 . 后面還要加上字母或者數(shù)字、下畫(huà)線(xiàn)。具體的代碼如下。
class Program
{
static void Main(string[] args)
{
Console.WriteLine("請(qǐng)輸入一個(gè)郵箱");
string email = Console.ReadLine();
Regex regex = new Regex(@"^(\w)+(\.\w)*@(\w)+((\.\w+)+)$");
if (regex.IsMatch(email))
{
Console.WriteLine("郵箱格式正確。");
}
else
{
Console.WriteLine("郵箱格式不正確。");
}
}
}總結(jié)
到此這篇關(guān)于如何使用正則表達(dá)式判斷郵箱的文章就介紹到這了,更多相關(guān)C#正則表達(dá)式判斷郵箱內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
在.NET?WebService中跨域CORS問(wèn)題的解決方案
在現(xiàn)代的Web應(yīng)用程序開(kāi)發(fā)中,跨域資源共享(Cross-Origin?Resource?Sharing,?CORS)問(wèn)題是開(kāi)發(fā)者經(jīng)常遇到的一個(gè)挑戰(zhàn),在這篇博客中,我們將深入探討如何在?.NET?WebService?中解決CORS問(wèn)題,幫助開(kāi)發(fā)者順利實(shí)現(xiàn)跨域請(qǐng)求,需要的朋友可以參考下2024-05-05
c# 調(diào)用Surfer軟件,添加引用的具體操作方法
本篇文章主要是對(duì)c#中調(diào)用Surfer軟件,添加引用的具體操作方法進(jìn)行了介紹,需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助2014-01-01
Unity 從UI中拖拽對(duì)象放置并拖動(dòng)效果 附demo
最近新接了個(gè)需求,要求模擬場(chǎng)景并生成3D對(duì)象,對(duì)象可以跟隨鼠標(biāo)移動(dòng)效果,今天小編把我實(shí)現(xiàn)的demo分享到腳本之家平臺(tái),對(duì)Unity UI拖拽相關(guān)知識(shí)感興趣的朋友跟隨小編一起學(xué)習(xí)吧2021-05-05
C#使用FileInfo和DirectoryInfo類(lèi)來(lái)執(zhí)行文件和文件夾操作
System.IO.FileInfo?和?System.IO.DirectoryInfo?是C#中用于操作文件和文件夾的類(lèi),它們提供了許多有用的方法和屬性來(lái)管理文件和文件夾,這篇文章主要介紹了C#使用FileInfo和DirectoryInfo類(lèi)來(lái)執(zhí)行文件和文件夾操作,需要的朋友可以參考下2023-08-08
c# 使用Task實(shí)現(xiàn)非阻塞式的I/O操作
這篇文章主要介紹了c# 使用Task實(shí)現(xiàn)非阻塞式的I/O操作,幫助大家更好的理解和學(xué)習(xí)c# 編程語(yǔ)言,感興趣的朋友可以了解下2020-11-11
C#正則表達(dá)式獲取下拉菜單(select)的相關(guān)屬性值
這篇文章主要介紹了C#正則表達(dá)式獲取下拉菜單(select)的相關(guān)屬性值,比如可以獲得name屬性的值、value值、指定值,需要的朋友可以參考下2014-07-07
C#開(kāi)發(fā)Winform實(shí)現(xiàn)文件操作案例
這篇文章介紹了C#開(kāi)發(fā)Winform實(shí)現(xiàn)文件操作的案例,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-04-04

