regex 只允许小写字符

i7uaboj4  于 2023-05-19  发布在  其他
关注(0)|答案(5)|浏览(142)

我使用下面的代码来检查用户输入是否为小写。我将允许从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

但这并不总是有效的。如果我输入industrialS,它不会找到大写的'S '。
我也试过:/^[a-z]$//[a-z]+/。但不管用。
请帮帮我。

xzlaal3s

xzlaal3s1#

正则表达式只是检查字符串是否有 * 任何 * 小写字符。试试这个:

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

该模式将只匹配具有一个或多个小写字母字符且没有其他字符的字符串。开头的“^”和结尾的“$”是匹配所测试字符串的开头和结尾的锚点。

fcy6dtqo

fcy6dtqo2#

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

mkshixfv3#

你的regexp应该是:

/^[a-z]+$/
lg40wkob

lg40wkob4#

以下是对我有效的解决方案:在密码前添加md5,如下所示:

$password=md5($_POST['password']);

在数据库中,选择用户并编辑密码,然后将其更改为MD5长文本密码。
这样您的密码将区分大小写。

5tmbdcev

5tmbdcev5#

因为你想要的只是小写字母,而不是告诉用户他/她做错了什么,我会修复它:

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();
}

相关问题