将regex存储在变量中的Javascript

Dra*_*cir 4 javascript regex

我在javascript中有这行代码

var re = (http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?
Run Code Online (Sandbox Code Playgroud)

通常我使用/字符封装正则表达式语法,但由于它们在正则表达式中找到它会搞砸封装.有没有其他方法可以将它存储在变量中?

当前的斜杠似乎是转义字符是正则表达式的一部分,因为我在c#中使用它并且完美地工作

geo*_*wa4 18

var re = new RegExp("^your regexp.*$", "gi");
Run Code Online (Sandbox Code Playgroud)


Ate*_*ral 7

一种方式是逃避所有的occurances /在您正则表达式的\/,就像你已经做的部分:

var re = /(http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:\/~\+#]*[\w\-\@?^=%&\/~\+#])?/;
Run Code Online (Sandbox Code Playgroud)