我想要对(A+B+C)这种类型的数据进行合理性验证,需要写一个正则表达式来判断。其中A、B、C都只能是数字(可含小数位),前后的括号也是必不可少的,谢谢各位~~

解决方案 »

  1.   

    var datas = [
    "1+2+3",
    "(1+2+3)",
    "(1+2+3.)",
    "(.1+2+3)",
    "(1.2+2.3+3)",
    "(1+2+3..2)",
    "(12++0+3)",
    "1(1+0+3)"
    ];
    var reg = /^\(\d+(\.\d+)?(\+\d+(\.\d+)?){2}\)$/;
    document.open();
    for(var i = 0; i < datas.length; i++) {
        document.write([datas[i], reg.test(datas[i])]);
        document.write("</br>");
    }
    document.close();
      

  2.   

    1+2+3,false
    (1+2+3),true
    (1+2+3.),false
    (.1+2+3),false
    (1.2+2.3+3),true
    (1+2+3..2),false
    (12++0+3),false
    1(1+0+3),false
      

  3.   

    try...var reg = /^\(([1-9][0-9]*(\.[0-9]*)?\+){2}[1-9][0-9]*(\.[0-9]*)?\)$/;