javascript学习指南|javascript 正则表达式定义方法详解

更新时间:2018-09-20    来源:Perl    手机版     字体:

【www.bbyears.com--Perl】

javascript中使用正则表达式有两种方式。第一种是构建一个RegExp对象;第二种是使用”//”来定义,也即perl风格。例如:

 代码如下

var str = "http://www.111cn.net/";

var reg = new RegExp("http", "i");
alert(reg.test(str));

alert(/http/.test(str));

上述例子就是使用两种方式判断字符串str中是否包含http,注意第二种方式 // 一定不能使用引号。

第一种方式生成对象是参数为字符串,所以可以动态(字符串拼接)的设定正则表达式的内容,第二种则不行。我们知道,正则表达式中有很多特殊字符,例如.,*,?等等,如果表达式中就是需要匹配这些特殊字符,那么就需要使用转义符 “”。特别要注意的是第一种处理转义符时候,需要使用两个“”。例如:

 代码如下

var str = "http://www.111cn.net/";

var reg = new RegExp("www\.", "i");   //此处使用了两个
alert(reg.test(str));

alert(/www./.test(str));

那为什么要使用 \ 来转义呢?因为第一种方式“编译”后还是会变为第二种方式。例如alert(new RegExp(‘www\.’, ‘i’)) 结果是 /www./i 。

本文来源:http://www.bbyears.com/jiaocheng/44476.html