键按下上的正则表达式 仅限制数字

Regex on Keydown To restrict only numbers

本文关键字:数字 正则表达式      更新时间:2023-09-26
function LettersOnly(e) {
    var charTyped = String.fromCharCode(e.which);
    var letterRegex = /[a-zA-Z._^%$#!~@,-'s'b`&]+/;
    if (!(charTyped.match(letterRegex)) || (e.keyCode >= 96 && e.keyCode <= 105)) {
        return false;
    }
    else {
        return true;
    }
}

这是我只限制数字的代码,但这里的特殊字符也不会出现......它在键下

要限制仅使用数字:

letterRegex = /[^0-9]/;

请参阅示例:

$("#text").keypress(
            
    function (e) {
    var charTyped = String.fromCharCode(e.which);
    var letterRegex = /[^0-9]/;
    
    if (charTyped.match(letterRegex)) {
        return true;
    }
    else {
        return false;
    }
  
});
    
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="text">

使用以下正则表达式模式仅匹配"非数字"字符:

...
var letterRegex = /'D+/;

如果匹配的数字返回 true,则需要匹配数字的正则表达式,然后返回 false。

function LettersOnly(e) {
    var charTyped = String.fromCharCode(e.which);
    var numberRegex = /'d+/;
    if (charTyped.match(numberRegex ) || (e.keyCode >= 96 && e.keyCode <= 105)) {
        return false;
    }
    else {
        return true;
    }
}

在按键中,我想我们不能限制数字,除非 !@#$%^&*(( 所以我在按键中这样做了,它就像一个魅力。谢谢大家...