仅允许使用小写字符

时间:2012-01-01 16:06:37

标签: javascript jquery regex

我使用以下代码检查用户输入是否为小写。我将允许az的字符。不允许其他角色。

JavaScript文件:

var pat = /[a-z]/;

function checkname()
{
  var t = $("input[name='user_name']").val();

  if(pat.test(t) == false)
  {
    alert('Only lowercase characters allowed');
  }
}
//... other functions

但是这个donot一直在工作。如果我输入industrialS,则不会找到该资本'S'。

我也尝试过:/^[a-z]$//[a-z]+/。但是没有工作。

请帮助我。

4 个答案:

答案 0 :(得分:7)

您的正则表达式只是检查字符串是否包含任何小写字符。试试这个:

var pat = /^[a-z]+$/;

该模式仅匹配具有一个或多个小写字母字符的字符串,而不匹配其他字符。开头的“^”和结尾的“$”是与测试字符串的开头和结尾匹配的锚点。

答案 1 :(得分:0)



if((/[a-z]/.test(email))==true){//allow the small characters}




答案 2 :(得分:-1)

你的正则表达式应该是:/ ^ [a-z] + $ /

答案 3 :(得分:-1)

既然你想要的只是小写字母,而不是仅告诉用户他/她做错了什么,我会解决它:

function checkname() {
    var disallowed = /[^a-z]/gi; // g=global , i=case-insensitive
    if (this.value == disallowed) {
        //delete disallowed characters
        this.value = this.value.replace(disallowed,'');
        alert('Only lowercase letters allowed');
        //instead of an alert, i would use a less intrusive fadeIn() message
    }
    this.value = this.value.toLowerCase();
}