C# - 又被問到如何判斷數值( Check Numeric ) 這個問題了...

摘要:C# - 又被問到如何判斷數值( Check Numeric ) 這個問題了...

前幾天又被同事問到,如何判斷這個字串是否為「純」數值呢!? 當下給了他三個選項:1.「double.TryParse」、2.「正規表示式」、3.「VB.NET 函式」,結果他是聽的一頭霧水,這時候為了減少耗下去的時間,當然就由小弟出手寫一下,讓彼此可以在繼續工作上的事。有鑑於此,還是寫一下文章,日後如「再」有遇到這樣的問題,直接給網址會比較快一些...

1.「double.TryParse」

Code:

double i;

if (double.TryParse(textBox1.Text, out i))
 MessageBox.Show("為數值!!");
else
 MessageBox.Show("非數值!!");



2.「正規表示式」

Code:

using System.Text.RegularExpressions;

...

if (Regex.IsMatch(textBox1.Text, @"^[\d,\.]+$"))
 MessageBox.Show("為數值!!");
else
 MessageBox.Show("非數值!!");


3.「VB.NET 函式」

加入參考


Code:

using Microsoft.VisualBasic;

...

if(Information.IsNumeric(textBox1.Text))
 MessageBox.Show("為數值!!");
else
 MessageBox.Show("非數值!!");

結果:


※ 感謝「test case」的提醒...