exp = new RegExp("^\\s*([-\\+])?(((\\d+)\\" + val.groupchar + ")*)(\\d+)"
                        + ((val.digits > 0) ? "(\\" + val.decimalchar + "(\\d{1," + val.digits + "}))?" : "")
                        + "\\s*$");
        m = op.match(exp);
        if (m == null)
            return null;
        var intermed = m[2] + m[5] ;
        cleanInput = m[1] + intermed.replace(new RegExp("(\\" + val.groupchar + ")", "g"), "") + ((val.digits > 0) ? "." + m[7] : 0);
        num = parseFloat(cleanInput);
        return (isNaN(num) ? null : num);            

解决方案 »

  1.   

    Length: 8
    Precision: 19
    Scale: 4
    翻译成中文
      

  2.   

    money貨幣資料值從 -2^63 (-922,337,203,685,477.5808) 到
    2^63 - 1 (+922,337,203,685,477.5807),精確度到千分之十貨幣單位。
    小数点前19-4=15位
    小数点后4位
      

  3.   

    http://www.regexlib.com/DisplayPatterns.aspx?cattabindex=4&categoryId=5
    到这个网站看下
      

  4.   

    <script language=javascript>
    <!--
    function checkvalue(o)
    {
    var str=o.value.replace(" ","")
    var re=/^[+-]{0,1}[0-9]{1,15}\.{0,1}[0-9]{0,4}$/
    if (re.test(str)==true ||  str.length == 0)
    {
    //o.style.backgroundColor="white";
    return true;
    }
    else
    {
    //o.style.backgroundColor="red";
    return false;
    }
    }
    //-->
    </script>
    <input name="TextBox1" type="text" id="TextBox1" onfocusout="javascript:checkvalue(this)" />