JavaScript 字符串.replace()

3
以下是替换内容。
"index.html".replace('\.html$', '_fr.html');

返回"index.html",表示第一个参数没有匹配到任何内容。但是,如果我去掉"$"符号。

"index.html".replace('\.html', '_fr.html');

如果第一个参数匹配,那么将返回“index_fr.html”。

回到第一个例子,有人能解释一下为什么“.html $”似乎不能匹配“index.html”吗?

1个回答

5

因为那不是一个正则表达式 - 在 JavaScript 中,正则表达式字面量的形式如下:

/\.html$/

没有引号。String.replace接受一个字符串或正则表达式字面量。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接