在js的正则里面能引用正则本身的变量吗?


比如在php里面


 preg_prelace("/<([a-z]+)>(.+?)<\/\\1>/is", $text);

这个在我可以用 \\1 来引用第一个参数,在js的正则表达式里可以这么用吗?

正则表达式 php JavaScript

堂本刚砸光 10 years, 2 months ago

当然可以啊


 /<([a-z]+)>(.+?)<\/\1>/.exec("<a>xxx</a>")

PS. 因为不是在字符串里,所以你不需要两个反斜线

坏坏的不爱 answered 10 years, 2 months ago

\n 就可以了,比如 \1 \2 ,例子:


 var regexp = /(['"])[^'"]*\1/;
console.log(
  regexp.test("'1'"),
  regexp.test('"2"'),
  regexp.test('"3\'')
); /* true true false */

我的肝很冷 answered 10 years, 2 months ago

Your Answer