标签:ret int col rabl value lis output return 面向
那是写一个类别来处理数字元素并收集起来。
开发程序,解决方法不是唯一的。相同的功能实现,方法不止一个。
参考下面代码:
1 class Ak 2 { 3 private string[] _stringArray; 4 5 public Ak(string[] stringArray) 6 { 7 this._stringArray = stringArray; 8 } 9 10 public IEnumerable<Digit> Result() 11 { 12 // var result = new List<Digit>(); 13 foreach (string s in _stringArray) 14 { 15 string pattern = "^[0-9]"; 16 Regex regex = new Regex(pattern); 17 if (regex.IsMatch(s)) 18 yield return new Digit(Convert.ToInt32(s)); 19 } 20 // return result; 21 } 22 public void Output() 23 { 24 foreach (Digit d in Result()) 25 { 26 Console.WriteLine(d.ToString()); 27 } 28 } 29 } 30
得到的结果与前一篇写自定义的方法进行验证的结果一样。
为了日后方便与维护,你可以把正则验计的代码,写成一个方法,或者是扩展方法,在程序需要正则验证时,直接使用这个方法即可。达到面向对象的三个要素这一,封装:
使用正则来处理,创建一个扩展方法:
1 public static bool Match(this string value, string pattern) 2 { 3 Regex regex = new Regex(pattern); 4 return regex.IsMatch(value); 5 }
标签:ret int col rabl value lis output return 面向
原文地址:http://www.cnblogs.com/yanglang/p/8005244.html