创建正则的方式:
1、构造函数创建
var regExp = new RegExp('[0-9a-zA-Z]','gi');//创建一个只能是数字和字母的正则
2、字面量方式创建
var regExp = /[0-9a-zA-Z]/gi;
在ECMAScript3
中,正则字面量始终会共享同一个RegExp实例。
在ECMAScript5
中规定,使用字面量和构造函数每一次都要都要创建一个新的RegExp实例。
因此建议使用字面量
表单验证方式
为表现、结构、样式分离,不建议在html代码中直接使用正则,也不利于扩展和维护。
绑定keyup事件,在事件的回调函数中处理,当按下每个键的时候,就调用。
var regExp = /[^0-9]/;
$('input').on('keyup',function(){
var str = $(this).val().replace(regExp,'');//每次输入的时候,如果按键为非数字,那么它就会被正则匹配到,然后将它替换为''空字符;因为每一此按键都会验证,所以并不需要加g全局匹配。
$(this).val(str);
});
正则验证
1、只能为数字
var regExp = /[0-9]/gi;//创建一个