正則表達式(Regular Expression)是一種文本模式,包括普通字符(例如,a 到 z 之間的字母)和特殊字符(稱爲"元字符")。正則表達式使用單個字符串來描述、匹配一系列匹配某個句法規則的字符串。正則表達式是煩瑣的,但它是強大的,學會以後的應用會讓你除了提升效率外,會給你帶來絕對的成就感。只要認真閱讀本教程,加上應用的時候進行必定的參考,掌握正則表達式不是問題。許多程序設計語言都支持利用正則表達式進行字符串操做。html
這段介紹摘自菜鳥教程,我的以爲描述的比較到位。正則表達式就是一串形如@"^[a-zA-Z\d_]{3,20}$"
,的字符串,其中的字符表明了某種匹配規則。好比[a-z]表示能夠匹配a到z的字符,[A-Z]能夠匹配A到Z的字符,\d表示匹配數字,{3,20}表示字符串的第3到20位要符合匹配的規則。具體的語法介紹你們能夠看看菜鳥教程 這裏就不過多贅述,主要仍是講講如何在asp.net(C#)開發中應用。web
asp.net(C#)在System.Text.RegularExpressions這個命名空間下包含了一個類叫Regex,它用來進行正則表達式的相關操做,下面是一段代碼正則表達式
string s = abcefg;
newRegex = new Regex(@"^[a-zA-Z\d_]{3,20}$");
Match m = newRegex.Match(s);
if(m.sucesss) Console.WriteLine(「匹配成功」);
else Console.WriteLine(「匹配失敗」);
字符串s是須要進行匹配的字符串,newRegex是新建的Regex類的實例,這個實例所表明的正則表達式是 @"^[a-zA-Z\d_]{3,20}$"
。 接下來就是對字符串進行匹配了。咱們使用Regex類的Match()函數,向函數傳入一個須要匹配的字符串,就會根據匹配返回一個Match類。左邊聲明的Match m 就是用來接收該類型的返回值。Match類的屬性和方法這裏不過多講解,你們能夠在文章末的附錄找到介紹它的連接。Match類有一個公開屬性success
,表明的就是匹配成功與否,它是一個bool型變量。成功爲true
,失敗爲false
。根據這個就能夠判斷所進行匹配的字符串是否匹配成功。這就是一個正則表達式使用的簡單流程。正則表達式的難點其實在於語法規則的熟悉,代碼編寫仍是比較簡單的。那麼下面就給你們附上比較經常使用的幾個正則表達式express
@"^[a-zA-Z\d_]{6,20}$"
@"^[a-zA-Z\d]{6,20}$"
匹配的字符串必須是大小寫字母、數字,長度在6~20位,能夠用來匹配密碼asp.net
@"^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$"
匹配字符串知足XXX@XXX.XXX的格式,可用來匹配郵箱地址ide