Day19-C# | 身分證正規表示式
上一篇在字串處理的部分有提到正規表達式,還記得當時google後看到一堆範例,第一瞬間覺得...WT..F?XD那些規則跟長相看起來不是很親民XDD不過仔細看完發現它搭配語法用來作比對的功能其實很方便!!立馬來研究一下!RegularExpression指的是用來比對字串是否符合指定格式的表示式。所屬命名空間為System.Text.RegularExpressions(就是你要記得寫這一串呼叫或是在using寫進去XD)。屬於Regex類別。很多語言都有支援RegularExpression,如:C#、JAVA、JavaScript、PHP...等。最常見的用法就是使用在當你讓使用者輸入一串文字,而你希望他照你...
上一篇在字串處理的部分有提到正規表達式,還記得當時google後看到一堆範例,第一瞬間覺得...WT..F?XD
那些規則跟長相看起來不是很親民XDD
不過仔細看完發現它搭配語法用來作比對的功能其實很方便!!立馬來研究一下!
Regular Expression指的是用來比對字串是否符合指定格式的表示式。所屬命名空間為System.Text.RegularExpressions(就是你要記得寫這一串呼叫或是在using寫進去XD)。屬於Regex類別。很多語言都有支援Regular Expression,如:C#、JAVA、JavaScript、PHP...等。最常見的用法就是使用在當你讓使用者輸入一串文字,而你希望他照你格式輸入時使用。
<<狀況劇>>
請輸入您的電話號碼:
於是一句中文,各自表述,你會得到許多你沒有辦法說他錯的答案
07-6511111(07)651-1111(07)651111165111110932111111+88611111111
又沒關係,反正都是電話阿,存進資料庫人看得懂就好啊---→當時前輩說要寫判斷電話的時候我真的這樣問XD,然後google文章發現原來不只有我會這樣問XDDD
不過你想想,如果只確定人看得懂就好,造成資料庫內存了很多格式的電話號碼,當哪一天我們要對這些電話進行篩選、排序、分析、比對,或是要進行批次變更,格式不同會造成寫程式很大的困擾。例如:上面那六個到底是不是同一支電話?排序要怎麼排?可以按照區域選出電話號碼嗎?
如果要用if之類的慢慢寫可能要寫一~~~~~大串才能夠個別解決遇到的問題,那既然這麼麻煩,何不一開始就讓他們好好的被輸入呢?這時候就是Regular Expression出場的時候了!
MSDN裡Regex的建構函式有五個,最常使用的有兩個
Regex regex = new Regex(string pattern);Regex regex = new Regex(string ...