標籤:rtu script system title 文字框 keyword button table string類
在進行C#編程時候,有的時候我們需要判斷一個字串是否是數字字串,我們可以通過以下兩種方法來實現。
【方法一】:使用 try{} catch{} 語句。
我們可以在try語句塊中試圖將string類型的字串變數轉換為int類型,如果該字串不是數字字串則會拋出異常,這時在catch語句塊中就能捕獲異常。一旦發現異常,則不是數字字串。
我們可以以下三種方式將string類型轉換為int類型。
(1) int.Parse(string);
(2) Convert.ToInt16(string); //當數字字串的位元大於4的時候請使用Convert.ToInt32()
(3) Convert.ToInt32(string);
添加一個文字框TextBox1,和一個按鈕Button1,當點擊按鈕時,判斷文字框中的內容是否為數字字串,是的話則輸出轉換後的數值。
?
1234567891011121314151617181920212223242526272829303132 |
protected void Button1_Click( object sender, EventArgs e) { string message = TextBox1.Text.Trim(); int result; if (isNumberic(message, out result)) { string tt= "<script>alert(‘匹配成功,轉換後的整數為" +result+ "‘)</script>" ; Page.ClientScript.RegisterStartupScript( this .GetType(), "" , tt); } else Page.ClientScript.RegisterStartupScript( this .GetType(), "" , "<script>alert(‘匹配失敗!‘)</script>" ); } protected bool isNumberic( string message, out int result) { //判斷是否為整數字串 //是的話則將其轉換為數字並將其設為out類型的輸出值、返回true, 否則為false result = -1; //result 定義為out 用來輸出值 try { //當數字字串的為是少於4時,以下三種都可以轉換,任選一種 //如果位元超過4的話,請選用Convert.ToInt32() 和int.Parse() //result = int.Parse(message); //result = Convert.ToInt16(message); result = Convert.ToInt32(message); return true ; } catch { return false ; } } |
上述方法可以將int改為double,如 double.Parse(),這樣就可以判斷是否為浮點數字串
【方法二】:通過Regex來判斷。
用Regex來驗證字串是否為數字字串。我們要用到Regex類的isMatch()方法。該類在System.Text.RegularExpressions; 您可以通過using System.Text.RegularExpressions;匯入命名空間來訪問Regex類。也可以直接通過System.Text.RegularExpressions.Regex 來訪問。
?
12345678910111213 |
protected bool isNumberic( string message, out int result) { System.Text.RegularExpressions.Regex rex= new System.Text.RegularExpressions.Regex( @"^\d+$" ); result = -1; if (rex.IsMatch(message)) { result = int .Parse(message); return true ; } else return false ; } |
通過Regex判斷是否匹配,不僅可以用來做簡單的判斷匹配,還可以進行精確的匹配,如判斷是否是六位的數字字串,Email匹配等。Regex是一種很好的方法。
?
12345678910111213141516 |
protected void Button1_Click( object sender, EventArgs e) { string message = TextBox1.Text.Trim(); isNumeric(message); //判斷字串是否為5為整數字串 } protected void isNumeric( string message) { if (message != "" && Regex.IsMatch(message, @"^\d{5}$" )) { //成功 Page.ClientScript.RegisterStartupScript( this .GetType(), "" , "<script>alert(‘匹配通過!確實是五位的整數字串‘)</script>" ); } else //失敗 Page.ClientScript.RegisterStartupScript( this .GetType(), "" , "<script>alert(‘匹配失敗!‘)</script>" ); } |
C#判斷字串是否為數字字串
C#判斷字串是否為數字字串