如何使用JavaScript正则表达式检查字符串是否包含至少一个字母?

时间:2018-10-18 12:38:39

标签: javascript regex

在用 PHP 编写的应用程序的一部分中,我需要在客户端验证中检查某个字段是否至少包含一个字母,为此编写以下 JavaScript代码

var name_allow_char = /^[a-zA-Z\-\'\s]+$/;
var name_allow_letter = /[A-Za-z]+$/;
if( $.trim( $('#title').val() ).match( name_allow_char ) && !$.trim( $('#title').val() ).match( name_allow_letter ) ) {
    //show error
} else {
    //ok
}

但是它不起作用。我的意思是,当我使用 12 进行测试时,它显示有效,但由于没有字母,因此应该无效...

谁能告诉我我的代码出了什么问题。

  • 谢谢

1 个答案:

答案 0 :(得分:0)

尝试一下:

if ($.trim($("#title").val()).match(/([a-zA-Z])+([ -~])*/) {
    // ok    
} else {
    // error
}

正则表达式应匹配1个或多个字母,后跟0个或多个ASCII符号(从空格到波浪号)

Demo