在javascript中正则表达式中/ slash的含义是什么

时间:2013-02-26 08:00:42

标签: javascript regex

/(斜杠)在下划线之前和之后的含义(_或任何有效的正则表达式)。是否与^和$相同,因为我习惯以这种方式写作,但看到有些人也这样写。它也是javascript中替换方法的特殊要求,或者我可以不使用它吗?

var hello = "Hello_there."
    .replace(/_/g, ' ');

2 个答案:

答案 0 :(得分:6)

/_/g构建正则表达式 literal ,就像"_"构建字符串文字一样。

/_/gnew RegExp("_", "g")相同,但在解析和评估后立即编译,因此如果您经常执行此行代码,则效率更高。

当第一次评估代码时,作为代码的大字符串将被一个逻辑结构替换,您可以在其中使用运算符,字符串,数字等。在这个结构中你也有正则表达式,这意味着每次执行代码时都不会发生正则表达式的编译,但只有一次。

它也更具可读性,因此在正则表达式不变时应首选。

MDN有good documentation on building and using regular expressions

答案 1 :(得分:0)

斜线表示开始,/ g表示正则表达式模式的结束。这只是语法。