js或jquery里使用正则表达式的时候,在正则里引入变量的两种方法推荐 亲测

文章标签: 正则
  • :
  • 03-17 17:41
  • :
  • 15次
  • :
  • 0条
  • 1赞

简介在js或jquery里使用正则的时候,两种在正则里加入变量的方法和实例。

今天站长在做一个文件上传时,需要加入一个可以设定文件类型的功能,所以就用到了在正则里引用变量的方法,这里站长把相关的两种方法整理一下,分享给大家。

大家知道,我们用正则来验证和判断一串字符串时,通常都是这样:

if(/\.(jpg|jpeg|gif|png)$/ig.test(str)){
    //验证通过
}else{
    //验证不通过
};

上面这段JS代码就是用来验证文件的后缀名的,如果我们把设定的后缀名放到变量里,然后在正则里引用这个变量时,就不能用上面这样的方法了:

方法一:使用new RegExp()来声明变量:

var t="jpg|jpeg|gif|png";
var reg=new RegExp("\.("+t+")$","gi");
//上面的写法,站长测试是可用的,但有的地方写到,用new RegExp()来声明正则时,最后把原来正则里的斜杠都再转义一下
var reg=new RegExp("\\.("+t+")$","gi");
//站长亲测,上面这个转义后的也是可用的

方法二:用eval:

var t="jpg|jpeg|gif|png";
var reg=eval("/\.("+t+")$/gi");
//已测 可用的

好了,关于正则里引用变量就上面这两种方法了,希望能帮助到所有看到这篇文章的朋友们!



您正在找的文章可能是: