c#保留小数点后两位怎么做?

来源:百度知道 编辑:UC知道 时间:2024/06/23 15:33:50
c# 用match类 把字符串如“17.285625”
label3输出成“.28”怎么做?
MatchCollection mc = Regex.Matches(label4.Text, @"这里面怎么写");
foreach (Match m in mc)
{
label3.Text = m.Value ;
}

在C#的输出格式中,可以实现你这个功能:
例:
float fl = 123.4565f;
double d = 23423.24234234d;
Response.Write(fl.ToString("0.00"));
Response.Write("<br/>");
Response.Write(d.ToString("0.00"));
0.00代表输出的格式
也可以写成.000有几个零就保存几位。
注意,这个没有实现四舍五入的算法。
如果要实现它就必须用到Math.Round()方法。

上面实现比较简单。
还有一种实现就是先转成字符类型,然后使用则这表达式来解决。
使用正则不需要使用循环的
\d+\.\d{2}
这样写就可以了!!!
然后Regex.Matche()这个方法匹配出你要的值就行了。

看不明白你的意思

你应该是在 label3.Text = m.Value ; 这里进行格式化的啊

而且,这种需求,用不到正则吧

Label3.Text.ToString().Trim().SubString(Label3.Text.ToString().Trim().LastIndexOf('.'),Label3.Text.ToString().Trim().LastIndexOf('.')+2);

自己试试。

@"\d+\.?\d{0,2}"

是啊,看你的问题和你的代码不知所云