Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在javascript中引用正则表达式文字?为什么不呢?_Javascript_Regex_String Literals - Fatal编程技术网

在javascript中引用正则表达式文字?为什么不呢?

在javascript中引用正则表达式文字?为什么不呢?,javascript,regex,string-literals,Javascript,Regex,String Literals,在回答一个问题和许多其他地方时,我在javascript中看到了不带引号的字符串 例如: var re = /\[media id="?(\d+)"?\]/gi; 为什么不改为: var re = '/\[media id="?(\d+)"?\]/gi'; 它是正则表达式的某种特殊处理,还是任何字符串都可以这样声明 var re = /\[media id="?(\d+)"?\]/gi; 是正则表达式文字,而不是字符串 是正则表达式,不是字符串。它只用于正则表达式,不是字符串。它只用于正则

在回答一个问题和许多其他地方时,我在javascript中看到了不带引号的字符串

例如:

var re = /\[media id="?(\d+)"?\]/gi;
为什么不改为:

var re = '/\[media id="?(\d+)"?\]/gi';
它是正则表达式的某种特殊处理,还是任何字符串都可以这样声明

var re = /\[media id="?(\d+)"?\]/gi;
是正则表达式文字,而不是字符串


是正则表达式,不是字符串。

它只用于正则表达式,不是字符串。

它只用于正则表达式,不是字符串。

因为在JavaScript中,正则表达式是一种内置类型,而不是传递给某些解析器(如C或Java)的字符串模式

这意味着当您编写var regex=/pattern/时,JavaScript会自动将该文本用作正则表达式模式,使regex成为RegExp类型的对象


请参阅:

,因为在JavaScript中,Regex是一种内置类型,而不是传递给某些解析器(例如在C或Java中)的字符串模式

这意味着当您编写var regex=/pattern/时,JavaScript会自动将该文本用作正则表达式模式,使regex成为RegExp类型的对象

见:

它是正则表达式的某种特殊处理吗

是的,正则表达式得到特殊处理。例如,有一个内置的JavaScript正则表达式类型,它有自己的文本语法

或者任何字符串都可以这样声明吗

var re = /\[media id="?(\d+)"?\]/gi;
不可以。因为正则表达式是对象而不是字符串,如果您尝试使用正则表达式文字编写字符串,您将得到一个正则表达式对象,而不是字符串

它是正则表达式的某种特殊处理吗

是的,正则表达式得到特殊处理。例如,有一个内置的JavaScript正则表达式类型,它有自己的文本语法

或者任何字符串都可以这样声明吗

var re = /\[media id="?(\d+)"?\]/gi;

不。因为正则表达式是对象而不是字符串,如果你尝试用正则表达式文字编写字符串,你会得到一个正则表达式对象,而不是字符串。

是一个比W3C更好的参考,W3C学校与真正的W3C没有任何关系,他们只是在google上大发雷霆。哇,我没有意识到这一点。我的错。谢谢你的提示,从现在起我会记住的。这是一个比W3C更好的参考,W3C学校与真正的W3C没有任何关系,他们只是通过谷歌的轰炸达到了顶峰。哇,我没有意识到这一点。我的错。谢谢你的提示,从现在起我会记住的。谢谢大家。我已经投票或接受了所有答案。对W3学校的评论也投了赞成票-谢谢大家。我已经投票或接受了所有答案。对W3学校的评论也投了赞成票-