您好。我有一个用于谷歌地图页面的表单,我想限制输入字段只允许a-z
,A-Z
,0-9
,空格和连字符。我正在使用:
var postCode = $('#form').val();
Validate = /[a-z0-9 A-Z\-]$/.test(postCode);
if (!Validate) {
$('#results').html("Please enter alpha numeric (a-z 0-9) characters");
return;
}
但这不起作用。有人可以帮我解决吗?
答案 0 :(得分:2)
我相信你需要/^[a-z0-9 A-Z\-]*$/
。注意字符串开头的^
- 最后与$
一起确保您验证整个字符串而不仅仅是其后缀。
如果您不想接受空字符串,可以用*
(一个或多个)替换+
(零或更多量词),或者甚至指定长度的确切范围:{{ 1}}。
答案 1 :(得分:0)
^[0-9a-zA-Z]+([ -][0-9a-zA-Z]+)?$
匹配
90210
ABCDEF
abc DEF
ABC-DEF
A1B-2C3
但如果存在前导或尾随空格/连字符,则不匹配。