當(dāng)前位置:首頁 > IT技術(shù) > Windows編程 > 正文

C#中使用正則表達(dá)式校驗(yàn)輸入非0的負(fù)整數(shù) 【轉(zhuǎn)載】
2021-10-07 11:16:20

?

在C#的程序開發(fā)過程中,有些時(shí)候需要校驗(yàn)輸入的字符串是否為非0的負(fù)整數(shù)。此文將介紹如何使用正則表達(dá)式 校驗(yàn)輸入的文本是否為非0的負(fù)整數(shù),程序中調(diào)用匹配的方法主要是C#類庫中的Regex類的IsMatch方法,IsMatch方法是正則表達(dá)式校驗(yàn)的常 用方法,其簽名為bool IsMatch(string input, string pattern),參數(shù)input表示輸入的校驗(yàn)參數(shù)值,pattern表示正則表達(dá)式語句。

Regex正則表達(dá)式類所在的命名空間為System.Text.RegularExpressions,因此使用之前需要先引入此命名空間。

針對(duì)校驗(yàn)輸入字符是否為非0的負(fù)整數(shù),封裝一個(gè)方法如下:

?public bool IsFuZhengShu(string strValue)
? ? ? ? {
? ? ? ? ? ? bool result = Regex.IsMatch(strValue, @"^-[1-9][0-9]*$");
? ? ? ? ? ? return result;
? ? ? ? }

在上述封裝的方法中,正則表達(dá)式中符號(hào)-表示匹配一個(gè)負(fù)號(hào),[1-9]表示第一位匹配1到9數(shù)字,[0-9]表示匹配0到9的數(shù)字,星號(hào)*表示匹配0個(gè)到多個(gè)數(shù)字,$表示結(jié)束。

下面以實(shí)例代碼的方式驗(yàn)證上面的方法:

? ? ? ?bool result1 = IsFuZhengShu("acbS");
? ? ? ? ? ? bool result2 = IsFuZhengShu("張三");
? ? ? ? ? ? bool result3 = IsFuZhengShu("1234");
? ? ? ? ? ? bool result4 = IsFuZhengShu("-1a34");
? ? ? ? ? ? bool result5 = IsFuZhengShu("-134");

上述實(shí)例運(yùn)行結(jié)果只有result5為true,其他全部為false。

本文摘自 :https://www.cnblogs.com/

開通會(huì)員,享受整站包年服務(wù)立即開通 >