您的位置:首页 > Web前端 > JavaScript

js中使用正则表达式(一)创建正则表达式的方式:正则对象方式和正则字面量方式

2015-09-15 20:40 741 查看
一、创建正则表达式的方式:正则对象方式和正则字面量方式

1、正则对象方式:
var regx = new RegExp();


(1)、该方式创建正则对象,构造函数可以接收两个参数p1和p2;p1表示匹配模式,必需;p2表示检索条件,可选;参数都是以双引号包裹的字符串,无需正斜杠包裹。

例如:

var regx = new RegExp("^\\d+[a-z]*$");
var regx = new RegExp("^\\d+[a-z]*$","gim");


2、正则字面量方式:var re = /p1/p2;

(1)、该方式创建的正则对象,参数p1被两个正斜杠包裹,必选;参数p2位于第二个正斜杠后面;

注意:两个参数p1和p2都无需用双引号包裹。

例如:

var regx = /^\d+[a-z]*$/;
var regx = /^\d+[a-z]*$/gim;


注意:

(1)如果采用正则对象方式,RegExg接收的是字符串,\反斜杠是转义字符,\d会变成d,此时需要使用两个反斜杠,即
\\d
来达到\d效果;但是在字面量方式中,不是字符串,所以使用一个反斜杠即可。


(2)、正则对象方式,可以接收参数,而正则字面量方式不可以。

例如:校验密码的长度为6到12为的字母或数字:

var regx = new RegExp("^[a-zA-Z0-9]{6,12}$","gim");
var regx = /^[a-zA-Z0-9]{6,12}$/gim;


如果采用动态的方式获取位数参数:只能通过正则对象的方式:`var regx = new RegExp("^[a-zA-Z0-9]{"+param1+","+param2+"}$","gim");`
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: