Js替换字符串的几种方法

Js替换字符串的几种方法替换字符串中的文本是 JavaScript 中的常见任务 本文研究几种用 replace 和正则表达式替换文本的方法 替换单个字串通常 JavaScript 的 Stringreplac 函数只会替换它在字符串中找到的第一个匹配的子符 constmyMessa thisisthesen constnewMess myMessage replace sentence message

替换字符串中的文本是 JavaScript 中的常见任务。本文研究几种用 replace 和正则表达式替换文本的方法。

 

替换单个字串

通常 JavaScript 的 String replace() 函数只会替换它在字符串中找到的第一个匹配的子符:

const myMessage = 'this is the sentence to end all sentences'; const newMessage = myMessage.replace('sentence', 'message'); console.log(newMessage); // this is the message to end all sentences

在这个例子中,仅替换了第一个 sentence 字串。

 

替换多个子串

如果希望 JavaScript 能够替换所有子串,必须通过 /g 运算符使用正则表达式:

const myMessage = 'this is the sentence to end all sentences'; const newMessage = myMessage.replace(/sentence/g, 'message'); console.log(newMessage); // this is the message to end all messages

这一次次两个子串都会被替换。

除了使用内联 /g 之外,还可以使用 RegExp 对象的构造函数:

const myMessage = 'this is the sentence to end all sentences'; const newMessage = myMessage.replace(new RegExp('sentence', 'g'), 'message'); console.log(newMessage); // this is the message to end all messages

 

替换特殊字符

要替换特殊字符,例如 -/\\^$*+?.()|[]{}),需要使用反斜杠对其转义。

如果给定字符串 this\\-is\\-my\\-url,要求把所有转义的减号( \\-)替换为未转义的减号(-)。

可以用 replace() 做到:

const myUrl = 'this\-is\-my\-url'; const newUrl = myMessage.replace(/\\-/g, '-'); console.log(newUrl); // this-is-my-url

或者用new Regexp():

const myUrl = 'this\-is\-my\-url'; const newUrl = myUrl.replace(new RegExp('\-', 'g'), '-'); console.log(newUrl); // this-is-my-url

在第二个例子中不必用反斜杠来转义反斜杠。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/209700.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 上午8:37
下一篇 2026年3月19日 上午8:37


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号