如何使用JavaScript的replace()方法替换字符串中的$符号?
如何用replace()替换字符串中的美元符号'$'
你之前的代码无效,核心问题是正则表达式写错了:/$/g里的$是正则的特殊元字符,代表「字符串的结束位置」,所以你的代码其实是在每个字符串末尾加了个S,根本没匹配到美元符号本身。
要匹配美元符号$,必须对它进行转义——因为它在正则里有特殊含义,转义后才能表示普通字符$。在JS的正则字面量中,转义需要用双反斜杠\$,所以正确的正则应该是/\$/g。
正确代码示例(正则方式)
var givenString = 'This is a $ample $tring to be $ome Random $egment$ in $ociety'; console.log(givenString.replace(/\$/g, "S"));
另一种替代方案(非正则)
如果只是替换固定的单个字符,也可以用split+join的方式实现全局替换:
var givenString = 'This is a $ample $tring to be $ome Random $egment$ in $ociety'; console.log(givenString.split('$').join('S'));
两种方法都能得到你想要的输出:This is a Sample String to be Some Random SegmentS in Society
内容的提问来源于stack exchange,提问作者user20816962
相关产品推荐
相关产品推荐

