要求格式:只能由"#A——#Z”和数字组成的运算式,运算符只有"+-*/%",可以包含"()",或数字,示例:
#A+#B+(#C-#D);
2*#B-#C;
3#D+5;

解决方案 »

  1.   

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    <script type="text/javascript">
    var arr=['#A+#B+(#C-#D)','2*#B-#C','3#D+5','#A','#AS'];
    var reg=/^([0-9\+\-\*\/\%\(\)]*(#[A-Za-z])*)+$/;
    for(var i in arr){
    alert(arr[i]+":"+reg.test(arr[i]));
    }

    </script>
    </head><body>
    </body>
    </html>
    这样试试
      

  2.   

    不行啊 ,遇到有括号的就出问题了,如#A*(#B+#C)
      

  3.   

    /^([0-9\+\-\*\/\%\(\)()]*(#[A-Za-z])*)+$/
    你的括号是中文的括号还是英文的啊