在正则表达式中添加DOT(.)

Jos*_*h90 1 javascript regex asp.net

我想.在下面的函数中为允许的字符添加一个():

$(id).bind('keypress', function(event) {
    var regex = new RegExp("[()a-zA-Z0-9 ?,/-]");
    var key = String.fromCharCode(!event.charCode ? event.which : event.charCode);
    if (!regex.test(key)) {
        event.preventDefault();
        return false;
    }
});
Run Code Online (Sandbox Code Playgroud)

但是,每次添加它都会出现错误:

未捕获的SyntaxError:无效的正则表达式:/ [()a-zA-Z0-9?,/ - .] /:字符类中的顺序乱序

我尝试添加just(.)并尝试添加(\.)但仍然是相同的错误.

请你协助我在哪里添加这个(.)?

Ami*_*oki 7

请注意,它-应该位于字符类的开头或结尾,或者必须通过反斜杠进行转义\,因为它表示范围a-z

/[()a-zA-Z0-9 ?,/.-]/
Run Code Online (Sandbox Code Playgroud)

此外,如果需要动态正则表达式,只需使用上面的正则表达式文字,如果不是,则必须删除分隔符/ /并使用实际的正则表达式[()a-zA-Z0-9 ?,/.-]作为String可在RegExp构造函数中使用的正则表达式.