C#中使用正則表達式校驗輸入非0的負整數(shù)
- 2019-08-13 00:26?
在C#的程序開發(fā)過程中,有些時候需要校驗輸入的字符串是否為非0的負整數(shù)。此文將介紹如何使用正則表達式 校驗輸入的文本是否為非0的負整數(shù),程序中調(diào)用匹配的方法主要是C#類庫中的Regex類的IsMatch方法,IsMatch方法是正則表達式校驗的常 用方法,其簽名為bool IsMatch(string input, string pattern),參數(shù)input表示輸入的校驗參數(shù)值,pattern表示正則表達式語句。
Regex正則表達式類所在的命名空間為System.Text.RegularExpressions,因此使用之前需要先引入此命名空間。
針對校驗輸入字符是否為非0的負整數(shù),封裝一個方法如下:
?public bool IsFuZhengShu(string strValue)
? ? ? ? {
? ? ? ? ? ? bool result = Regex.IsMatch(strValue, @"^-[1-9][0-9]*$");
? ? ? ? ? ? return result;
? ? ? ? }
在上述封裝的方法中,正則表達式中符號-表示匹配一個負號,[1-9]表示第一位匹配1到9數(shù)字,[0-9]表示匹配0到9的數(shù)字,星號*表示匹配0個到多個數(shù)字,$表示結(jié)束。
下面以實例代碼的方式驗證上面的方法:
? ? ? ?bool result1 = IsFuZhengShu("acbS");
? ? ? ? ? ? bool result2 = IsFuZhengShu("張三");
? ? ? ? ? ? bool result3 = IsFuZhengShu("1234");
? ? ? ? ? ? bool result4 = IsFuZhengShu("-1a34");
? ? ? ? ? ? bool result5 = IsFuZhengShu("-134");
上述實例運行結(jié)果只有result5為true,其他全部為false。
本文摘自 :https://www.cnblogs.com/