Javascript Jquery中带有正则表达式的浮点范围

Javascript Jquery中带有正则表达式的浮点范围,javascript,jquery,regex,Javascript,Jquery,Regex,有人能帮我过滤0.00-4.00范围内的输入吗 <input id="test" name="test" type="text" maxlength="4" required> <script> $('#test').on('change keyup', function() { var test = $(this).val().replace(/[^0-4\.]/g, ''); $(this).val(test); }); </script&g

有人能帮我过滤0.00-4.00范围内的输入吗

<input id="test" name="test" type="text" maxlength="4" required>

<script>
$('#test').on('change keyup', function() {
    var test = $(this).val().replace(/[^0-4\.]/g, '');

    $(this).val(test);
});
</script>

$('#test')。在('change keyup',function()上{
var test=$(this.val().replace(/[^0-4\.]/g');
$(此).val(测试);
});
正确:

  • 0.00
  • 1.90
  • 4.00
错误:

  • 123
  • 4.01
  • 12.2
更新:


我的意思是,我不希望用户键入0.00-4.00以外的内容。这就是为什么我需要在keyup上使用
$(this).val().replace()
正则表达式使任务过于复杂的原因。通过使用
String.prototype.parseFloat

$('#test')。在('change keyup',function()上{
变量$this=$(this)
var test=parseFloat($this.val())
//测试该值是否在您的范围内

如果(test>0&&test正则表达式使任务过于复杂。只需使用
String.prototype.parseFloat

$('#test')。在('change keyup',function()上{
变量$this=$(this)
var test=parseFloat($this.val())
//测试该值是否在您的范围内

如果(test>0&&test)简单地将其解析为一个数字,并与
进行比较。为什么要用regex执行此操作?简单地将其解析为一个数字,并与
进行比较。为什么要用regex执行此操作?