C#正則表達(dá)式之擇一匹配淺析
作者:chenglidexiaoxue
C#正則表達(dá)式之擇一匹配是什么呢?C#正則表達(dá)式之擇一匹配是如何使用的呢?C#正則表達(dá)式之擇一匹配代表什么意思呢?那么本文就向你介紹具體的內(nèi)容。
C#正則表達(dá)式之擇一匹配都是什么呢?具體的操作有哪些呢?
C#正則表達(dá)式中的 (|) 符號似乎沒有一個專門的稱謂,姑且稱之為“擇一匹配”吧。事實上,像[a-z]也是一種擇一匹配,只不過它只能匹配單個字符,而(|)則提供了更大的范圍,(ab|xy)表示匹配ab或匹配xy。注意“|”與“()”在此是一個整體。
下面提供一些簡單的C#正則表達(dá)式之擇一匹配示例:
- string x = "0";
- string y = "0.23";
- string z = "100";
- string a = "100.01";
- string b = "9.9";
- string c = "99.9";
- string d = "99.";
- string e = "00.1";
- Regex r = new Regex(@"^\+?((100(.0+)*)|([1-9]?[0-9])(\.\d+)*)$");
- Console.WriteLine("x match count:" + r.Matches(x).Count);//1
- Console.WriteLine("y match count:" + r.Matches(y).Count);//1
- Console.WriteLine("z match count:" + r.Matches(z).Count);//1
- Console.WriteLine("a match count:" + r.Matches(a).Count);//0
- Console.WriteLine("b match count:" + r.Matches(b).Count);//1
- Console.WriteLine("c match count:" + r.Matches(c).Count);//1
- Console.WriteLine("d match count:" + r.Matches(d).Count);//0
- Console.WriteLine("e match count:" + r.Matches(e).Count);//0
- //匹配0到100的數(shù)。最外層的括號內(nèi)包含兩部分“(100(.0+)*)”,
- //“([1-9]?[0-9])(\.\d+)*”,
- //這兩部分是“OR”的關(guān)系,
- //即正則表達(dá)式引擎會先嘗試匹配100,
- //如果失敗,則嘗試匹配后一個表達(dá)式(表示[0,100)范圍中的數(shù)字)。
C#正則表達(dá)式之擇一匹配使用的基本內(nèi)容就向你介紹到這里,希望對你了解和學(xué)習(xí)C#正則表達(dá)式有所幫助。
【編輯推薦】
責(zé)任編輯:仲衡
來源:
CSDN博客