仅针对数字的正则表达式
仅针对数字的正则表达式
我完全没有使用过正则表达式,所以在进行故障排除时遇到了困难。我想让正则表达式仅在包含数字的字符串全部是数字时匹配;但是在下面的两个例子中,它会匹配一个包含所有数字加上等号的字符串,例如“1234=4321”。我相信有一种方法可以改变这种行为,但是正如我所说,我从没有真正使用过正则表达式。
string compare = "1234=4321"; Regex regex = new Regex(@"[\d]"); if (regex.IsMatch(compare)) { //true } regex = new Regex("[0-9]"); if (regex.IsMatch(compare)) { //true }
如果有关系,我正在使用C#和.NET2.0。
admin 更改状态以发布 2023年5月21日
使用起始和结束锚点。\n
Regex regex = new Regex(@"^\d$");
\n如果需要匹配多个数字,请使用\"^\\d+$\"
。\n
\n请注意,\"\\d\"
会匹配[0-9]
和类似于阿拉伯数字٠١٢٣٤٥٦٧٨٩
的其他数字字符。使用\"^[0-9]+$\"
仅限制匹配阿拉伯数字0-9。\n
\n如果需要包含除数字以外的任何数字表示(例如,启动器的十进制值),请参见@ tchrist的使用正则表达式解析数字的全面指南。