C#判斷字符串中內(nèi)容是否為純數(shù)字的詳細(xì)教程
1.使用ASCII碼判斷
您可以使用ASCII碼來(lái)進(jìn)行判斷字符串中的內(nèi)容是否為純數(shù)字。
步驟如下:
- 先判斷字符串是否為空的情況,保證代碼運(yùn)行的穩(wěn)定性;
- 將字符串按照ASCII編碼規(guī)則獲取字符數(shù)組,字符是Byte型,字符的Byte值為ASCII表對(duì)應(yīng);
- 遍歷字符數(shù)組,判斷字符數(shù)組中的每個(gè)字符是否全為數(shù)字。其中,ASCII表中0~9對(duì)應(yīng)的ASCII值為48~57。
下面是代碼的樣子:
public bool isPureNum(string str)
{
if (str.Length==0 || str == null)//驗(yàn)證這個(gè)字符串是否為空
{
return false;
}
byte[] strBytes = Encoding.ASCII.GetBytes(str);//獲取字符串的byte類型的字符數(shù)組,編碼方式ASCII
foreach(byte strByte in strBytes)
{
if ((strByte<48) || (strByte>57)) //判斷每個(gè)字符是否為數(shù)字,根據(jù)每個(gè)字符的ASCII值所在范圍判斷
{
return false; //不是,就返回false
}
}
return true; //是,就返回true
}2.使用TryParse()方法
您可以使用TryParse()方法來(lái)識(shí)別字符串是否為數(shù)字,步驟如下:
它通過(guò)將指定的字符串轉(zhuǎn)換為等效的有符號(hào)整數(shù)表示并返回true。如果轉(zhuǎn)換成功, true;否則,false。
下面是代碼的樣子:
public bool isPureNum(string str)
{
bool isNumeric=int.TryParse(str,out _);
return isNumeric;
}3.使用Regex.IsMatch()方法(正則表達(dá)式)
您可以使用正則表達(dá)式來(lái)檢查字符串是否為數(shù)字。
這可以使用Regex.IsMatch()方法,它確定指定的字符串是否與提供的正則表達(dá)式匹配。
這在下面演示:(注意^匹配字符串的開(kāi)頭和$與它的結(jié)尾相匹配)
public bool isPureNum(string str)
{
if (str == null)//驗(yàn)證這個(gè)字符串是否為空 測(cè)試:字符串為空字符串不會(huì)發(fā)生異常,字符串為null會(huì)發(fā)生異常
{
return false;
}
bool isNumeric=System.Text.RegularExpressions.Regex.IsMatch(str,@"^\d+$");
return isNumeric;
}4.使用Char.IsDigit()方法
您可以使用Char,IsDigit()方法與與Enumerable.All()方法來(lái)檢查字符串是否為數(shù)字。
Char.IsDigit()方法返回一個(gè)布爾值,用來(lái)指明指定的字符是否為數(shù)字。
下面的代碼演示了Char.IsDigit()方法與Enumerable.All()判斷字符串是否為數(shù)字的方法:
public bool isPureNum(string str)
{
if (str == null)//驗(yàn)證這個(gè)字符串是否為空 測(cè)試:字符串為空字符串不會(huì)發(fā)生異常,字符串為null會(huì)發(fā)生異常
{
return false;
}
bool isNumeric = str.All(char.IsDigit);//檢查字符串中的所有字符是否全為數(shù)字
return isNumeric;
}總結(jié)
到此這篇關(guān)于C#判斷字符串中內(nèi)容是否為純數(shù)字的文章就介紹到這了,更多相關(guān)C#判斷字符串是否為純數(shù)字內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
親自教你實(shí)現(xiàn)棧及C#中Stack源碼分析
大家都知道棧的實(shí)現(xiàn)方式有兩種,一種是基于數(shù)組實(shí)現(xiàn)的順序棧,另一種是基于鏈表實(shí)現(xiàn)的鏈?zhǔn)綏!_@篇文章主要介紹了手把手教你實(shí)現(xiàn)棧以及C#中Stack源碼分析,需要的朋友可以參考下2021-09-09
C#對(duì)Access進(jìn)行增刪改查的完整示例
本文主要是講C#對(duì)Access數(shù)據(jù)庫(kù)的增刪改查操作,想學(xué)習(xí)C#和Access數(shù)據(jù)庫(kù)操作基礎(chǔ)的可以參考借鑒,以下代碼都經(jīng)過(guò)實(shí)踐測(cè)試可用,下面跟著小編一起來(lái)看看。2016-08-08
C#實(shí)現(xiàn)讀取注冊(cè)表監(jiān)控當(dāng)前操作系統(tǒng)已安裝軟件變化的方法
這篇文章主要介紹了C#實(shí)現(xiàn)讀取注冊(cè)表監(jiān)控當(dāng)前操作系統(tǒng)已安裝軟件變化的方法,涉及C#針對(duì)注冊(cè)表的讀取與監(jiān)控技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-08-08
C#開(kāi)發(fā)WinForm之DataGridView開(kāi)發(fā)詳解
這篇文章主要介紹了C#開(kāi)發(fā)WinForm之DataGridView開(kāi)發(fā)詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01

