求一個數字的正則表達式
要求小數點后面保留兩位小數。零也要保留
比如 :2 -> 2.00
請教高手~~~

解决方案 »

  1.   

    别人的代码:
    服务器端Page_Load:
    if (!IsPostBack)
    {
        TextBoxCheckNum.Style.Add("ime-mode","disabled");
        TextBoxCheckNum.Attributes.Add("onkeypress","CheckNum();");
        TextBoxCheckNum.Attributes.Add("onblur","ChangeNum(this);");
    }客户端:
    <script language="javascript">
    function CheckNum()
    {
        var objRegex = /[\d\.]/ig;    if (String.fromCharCode(event.keyCode).match(objRegex) == null)
        {
            event.returnValue = 0;
        }
    }function ChangeNum(obj)
    {      
        if (obj.value.indexOf(".") < 0)
        {
            obj.value = obj.value + ".00";
        }
    }
    </script>
      

  2.   

    Math.Round(double,int);
    int 就是你要保留的位数,比如2
      

  3.   

    樓上的兄弟們,這些方法在DATAGRID中好象不好用
    我是要在前台的代碼中格式數字的格式
    比如我要整數的表達式:
    <asp:BoundColumn DataField="total" DataFormatString="{0:#,##0;(#,##0);0}" ItemStyle-Width="120"></asp:BoundColumn>
    再次請教這種格式保留兩位小數的寫法
      

  4.   

    <asp:RegularExpressionValidator ControlToValidate="txtUnitPrice" ValidationExpression="[\d]+\.[\d]{2}" ID="RegularExpressionValidator1" runat="server" ErrorMessage="只能为数字,请保留两位小数" Display="Dynamic"></asp:RegularExpressionValidator>
      

  5.   

    标题不要写错了,是格式不是正则表达式
     DataFormatString="{0:#,##0.00;(#,##0.00);0.00}"
      

  6.   

    Lukiya(路基亚) 兄弟說的方法可以不可以在DATAGRID里面用丫?
     
    Tiger_Zhao(VB老鸟)兄弟的格式在運行后沒有出現保留兩位小數的效果~~
    奇怪了~~