挖一挖C#中那些我们不常用的东西之系列(2)——IsXXX 系列方法

 

  不知道有人做没做过对日外包,如果做过的话,那么对vb.net应该非常熟悉了,当年我刚毕业的时候也做过四个月的外包,那种日子简直

不是人过的,就连大楼下面买珠宝的阿姨都说,这些孩子,只看过他们上班,就没见过他们下班,不过有一点好,有个QA的小姑娘天天下午6

点教我们倭瓜语,现在还在勾搭中。。。

    好了,现在我们看看需求。

 

一: 如何判断“a”是不是数字类型。

  ①:在C#中我们可能会用TryParse来判断当前的”a“是否为整数。

 1         static void Main(string[] args)
 2         {
 3             var a = "a";
 4 
 5             int r;
 6 
 7             Console.WriteLine(int.TryParse(a, out r));
 8 
 9             Console.Read();
10         }

  这个tryparse,我想大家都很熟悉,不过最讨厌的地方就是,我就是仅仅为了知道“a”是不是整数即可,还非要定义一个r变量,讨厌不讨厌。

 

 ② 使用正则

  万能的正则,没有它解决不了的问题,不过为了它,我还要写“表达式”,还是有点小麻烦呢,不喜欢,我还要更简单一点的方法。

1             var a = "a";
2 
3             Console.WriteLine(Regex.IsMatch(a, "^\\d$"));
4 
5             Console.Read();

 

 ③:如果你知道vb.net的话,那你肯定会知道vb中是有一个IsNumeric方法的。

1     Sub Main()
2 
3         Dim a As String = "a"
4 
5         Console.WriteLine(IsNumeric(a))
6 
7         Console.Read()
8 
9     End Sub

 

   当你看到这个方法的时候是不是很爽,下面我们继续挖下是哪个命名空间就行了。知道了命名空间,那我们C#是不是可以运用拿来主义呢?

 

好了,现在已经把ta扒光了,不过在Microsoft.VisualBasic空间下,我们还看到了7个貌似非常有用的isXXX,太好了~~~

下面我们添加下引用。

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 using Microsoft.VisualBasic;
 7 using System.Diagnostics;
 8 
 9 namespace ConsoleApplication1
10 {
11     class Program
12     {
13         static void Main(string[] args)
14         {
15             var a = "a";
16 
17             Console.WriteLine(Information.IsNumeric(a));
18 
19             Console.Read();
20         }
21     }
22 }

 

 这些IsXXX方法都是非常见名识义的,我也不需要再code解释了,下面大家有兴趣可以自己动手尝试下,这些方法都是非常非常有用的,

没有做不到,只有想不到~  比如IsDate方法,如果在C#中判断一个字符串是否为时间是比较麻烦的,要么tryparse,要么正则,总的

来看,VS是个大平台,当C#不好实现的时候,可以想想是否可以引用下其他语言下面的方法,或许你有大收获~

 

posted @ 2014-03-26 23:34  一线码农  阅读(6867)  评论(91编辑  收藏  举报