代码之家  ›  专栏  ›  技术社区  ›  Biki

如何使用jquery检查输入字符串中的大写字母

  •  3
  • Biki  · 技术社区  · 15 年前

    我正在使用以下代码段,但它不起作用:-(

        //First four characters of input Text should be ALPHABATES (Letters)
    
        if (($("#txtId").val()).length >= 4) {
            var firstFourChars = $("#txtId").val().substring(0, 4);
            var pattern = new RegExp('[^A-Z]');
    
            if (firstFourChars.match(pattern))
                isValid = true;
            else
                isValid = false;
        }
    
    5 回复  |  直到 8 年前
        1
  •  2
  •   PJP    15 年前

    您不需要使用substring()。你的regexp可以为你做所有的工作。您使用的regexp与不在a和z之间的字符匹配。正如Avinash所说,^[a-z]4将匹配,如果前4个字符是大写的。”^“在regexp的开头,告诉您下面应该是字符串的开头。当置于方括号内时,它将恢复您想要匹配的字符范围。

        2
  •  8
  •   user372551    15 年前

    改变 /[^A-Z]/ /^[A-Z]/

    例子 :

    var a = "ABCJabcd";
    console.log(a.match(/^[A-Z]{4}/));
    
        3
  •  0
  •   Box    15 年前

    如果要匹配4个小写字符,则regex应为/[^a-z]4/。

        4
  •  0
  •   Limitless isa    13 年前

    要在大文件中间检测,请将/^[a-z]/更改为/[a-z]。/

    Example text: " asşldla ABCJ abcd AÇALASD"
    
    $('.Order input').change(function (){ucheck($(this).val())});
    $('.Order input').keyup(function (){ucheck($(this).val())});
    
        function ucheck(a) {
            if(a.match(/[A-ZĞÜŞİÖÇ]{4}/)){
    $('.Order #Error').html(' UPPERCASE');
    }else{$('.Order #Error').html('Capitalize');}
        }
    
        5
  •  0
  •   Gibolt    8 年前

    如果需要资本:

    const startsWithCapitals = /^[A-Z]{4}/.test(string);
    

    或者,如果它们只是需要字母,则添加一个 i 对于忽略案例:

    const startsWithLetters = /^[a-z]{4}/i.test(string);
    

    ^ 表示字符串的开始 {number} 意味着X拷贝