在以下文字中:
"123 + 456 + 789"
如何用%20替换所有"+"字符?我看到的使用正则表达式的例子最终将+视为表达式使用的规则的一部分,因此似乎不能使用正则表达式.
你只需要逃避第+一个,这是用反斜杠完成的:
const str = "123+456+789";
console.log(
str.replace(/\+/g, '%20')
);Run Code Online (Sandbox Code Playgroud)
同样的事情是,在正则表达式的特殊含义的任何字符真像括号*,^等-来匹配文字字符,把一个反斜杠在它的前面.(反斜杠本身相同 - \\匹配文字反斜杠)