C#正则表达式之择一匹配浅析

C#正则表达式之择一匹配都是什么呢?具体的操作有哪些呢?

创新互联专注于涪陵网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供涪陵营销型网站建设,涪陵网站制作、涪陵网页设计、涪陵网站官网定制、微信小程序服务,打造涪陵网络公司原创品牌,更为您提供涪陵网站排名全网营销落地服务。

C#正则表达式中的 (|) 符号似乎没有一个专门的称谓,姑且称之为“择一匹配”吧。事实上,像[a-z]也是一种择一匹配,只不过它只能匹配单个字符,而(|)则提供了更大的范围,(ab|xy)表示匹配ab或匹配xy。注意“|”与“()”在此是一个整体。

下面提供一些简单的C#正则表达式之择一匹配示例:

 
 
 
  1. string x = "0";  
  2.  
  3. string y = "0.23";  
  4.  
  5. string z = "100";  
  6.  
  7. string a = "100.01";  
  8.  
  9. string b = "9.9";  
  10.  
  11. string c = "99.9";  
  12.  
  13. string d = "99.";  
  14.  
  15. string e = "00.1";  
  16.  
  17. Regex r = new Regex(@"^\+?((100(.0+)*)|([1-9]?[0-9])(\.\d+)*)$");  
  18.  
  19. Console.WriteLine("x match count:" + r.Matches(x).Count);//1  
  20.  
  21. Console.WriteLine("y match count:" + r.Matches(y).Count);//1  
  22.  
  23. Console.WriteLine("z match count:" + r.Matches(z).Count);//1  
  24.  
  25. Console.WriteLine("a match count:" + r.Matches(a).Count);//0  
  26.  
  27. Console.WriteLine("b match count:" + r.Matches(b).Count);//1  
  28.  
  29. Console.WriteLine("c match count:" + r.Matches(c).Count);//1  
  30.  
  31. Console.WriteLine("d match count:" + r.Matches(d).Count);//0  
  32.  
  33. Console.WriteLine("e match count:" + r.Matches(e).Count);//0  
  34. //匹配0到100的数。最外层的括号内包含两部分“(100(.0+)*)”,  
  35.  
  36. //“([1-9]?[0-9])(\.\d+)*”,  
  37.  
  38. //这两部分是“OR”的关系,  
  39.  
  40. //即正则表达式引擎会先尝试匹配100,  
  41.  
  42. //如果失败,则尝试匹配后一个表达式(表示[0,100)范围中的数字)。  

C#正则表达式之择一匹配使用的基本内容就向你介绍到这里,希望对你了解和学习C#正则表达式有所帮助。

当前题目:C#正则表达式之择一匹配浅析
URL链接:http://www.36103.cn/qtweb/news48/5448.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联