Fil*_*nov 3 c# integer exception
我试图想出一个表达式来检查给定的整数,如果从右到左的第三个数字是5.我到目前为止管理的是:
string input = "5";
if (Regex.IsMatch(input[2].ToString(), "[5]"))
{
System.Console.WriteLine("yes");
}
else
System.Console.WriteLine("no");
Run Code Online (Sandbox Code Playgroud)
遇到了2个问题:
首先,它从左到右计数,而不是从右到左,第二个,当数字小于3位时,就像在这种情况下返回超出范围的例外.
使用数字方式.如果数字大于99并且n是整数,那么使用
(n / 100) % 10 == 5
Run Code Online (Sandbox Code Playgroud)
n / 100删除最后两位数(整数除法截断)并% 10提取当前最右边的数字.检查它是否为5.
它比使用正则表达式快得多.
| 归档时间: |
|
| 查看次数: |
2254 次 |
| 最近记录: |