问答详情
源自:6-11 编程练习

实数正则表达式怎么写?哪位大神知道?我的正则表达式写0.还是会通过验证

<!DOCTYPE html>

<html>

 <head>

  <title> 事件</title>  

  <script type="text/javascript">

   function count(){

       //获取第一个输入框的值

        var txt1 = document.getElementById("txt1").value;  

//获取第二个输入框的值

var txt2 = document.getElementById("txt2").value; 

//获取选择框的值

var sign = document.getElementById("select").value; 

//获取通过下拉框来选择的值来改变加减乘除的运算法则

var regex="^[0-9]*([\.]{0,1}[0-9]*)$";

//正浮点数正则

//var regex = "[1-9]\d*.\d*|0.\d*[1-9]\d*";

if(!txt1.match(regex) || !txt2.match(regex)){

   alert("请输入数字!");

}else{

var result;

switch(sign){

   case "+":result=parseFloat(txt1)+parseFloat(txt2);

       break;

   case "-":result=parseFloat(txt1)-parseFloat(txt2);

       break;

   case "*":result=parseFloat(txt1)*parseFloat(txt2);

       break;

   case "/":result=parseFloat(txt1)/parseFloat(txt2);

       break;

   default:alert("无效运算!");

       break;

}

    //设置结果输入框的值 

    document.getElementById("fruit").value=result;

}

   }

  </script> 

 </head> 

 <body>

   <input type='text' id='txt1' /> 

   <select id='select'>

<option value='+'>+</option>

<option value="-">-</option>

<option value="*">*</option>

<option value="/">/</option>

   </select>

   <input type='text' id='txt2' /> 

   <input type='button' value=' = ' onclick="count()"/> <!--通过 = 按钮来调用创建的函数,得到结果--> 

   <input type='text' id='fruit' />   

 </body>

</html>


提问者:肆guliang 2018-06-20 08:43

个回答

  • 慕设计5463683
    2018-06-22 14:27:25

    var regex ="^([1-9]\\d*(\\.\\d*[1-9])?)|(0\\.\\d*[1-9])$"