我的 JavaScript RegExp 需要帮助来获得我的工资收入

Assistance needed with my JavaScript RegExp for my salary income

本文关键字:我的 JavaScript RegExp 帮助      更新时间:2023-09-26

我可以让它只允许数字,但我需要以下方面的帮助:

  1. 只有第一个数字可以大于 0
  2. 用户最多可以输入 9 个字符和最少 2 个字符,然后必须输入小数点。
  3. 小数点后,他们只能再输入 2 个数字。

    $("#mytextbox").on("keypress", function(event) {
        var ValidPrice = /[1-9][0-9]/;
        var key = String.fromCharCode(event.which);
        if (event.keyCode == 8 || event.keyCode == 37 || event.keyCode == 39 || ValidPrice.test(key)) {
            return true;
        }
        return false;
    });
    $('#mytextbox').on("paste",function(e) {
        e.preventDefault();
    });
    

要强制使用大于 0 的数字,您的第一部分[1-9]应该有效。

对于 2 到 9 个字符(或 1 到 8 个字符,不包括第一个数字),可以使用 [0-9]{1,8}'d{1,8}

对于小数点,请使用 '.

对于另外两个数字,请使用 'd{2}

因此,将这些加在一起,/[1-9]'d{1,8}'.'d{2}/应该有效。

但是,您也可以通过完全避免使用正则表达式来实现类似的功能 - 这个答案可能会有所帮助。