正则表达式允许使用字母数字的空格

时间:2013-10-22 00:28:25

标签: jquery

我在这里有这个:

$("#MyInputBox").keypress(function (e) {
  if (e.charCode != 0) {
    var regex = new RegExp("^[a-zA-Z0-9\-\s]+$");
    var key = String.fromCharCode(!e.charCode ? e.which : e.charCode);
    if (!regex.test(key)) {
      e.preventDefault();
      return false;
    }
  }
});

问题是,它不允许我输入空格。我希望它允许一个空间。其他一切都运行正常(即我可以输入数字,字母,短划线......但不能输入空格。)

1 个答案:

答案 0 :(得分:14)

您必须在s

之前转义反斜杠
var regex = new RegExp("^[a-zA-Z0-9\\-\\s]+$");

或省略构造函数:

var regex = /^[a-zA-Z0-9\-\s]+$/