js regexp replace $1

在 JavaScript 的正则表达式中,可以使用 $1 来引用匹配的第一个子字符串。当你使用 replace() 方法并在第二个参数中使用 $1 时,它将被替换为匹配的第一个子字符串。

const str = 'hello world';
const newStr = str.replace(/(hello)/, '$1 there');
console.log(newStr); // 'hello there world'

在上面的例子中,/(hello)/ 匹配字符串中的 "hello",并将其作为第一个子字符串进行捕获。然后,'$1 there'$1 替换为捕获的第一个子字符串 "hello",从而得到新字符串 "hello there world"。

需要注意的是,如果你想要在字符串中使用 $ 字符本身,需要使用转义字符 \$ 来表示,否则 $ 会被解释为正则表达式中的特殊字符。

const str = 'I have $5';
const newStr = str.replace(/\$5/, 'ten dollars');
console.log(newStr); // 'I have ten dollars'

在上面的例子中,\$ 转义了 $ 字符,因此正则表达式 /\$5/ 可以匹配字符串中的 "$5"。

  •