在 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"。