JavaScript 中替换字符串中的最后一个字符

JavaScript 中要替换字符串中的最后一个字符:

  1. 使用 String.slice() 方法获取字符串的一部分,直到最后一个字符。
  2. 使用加法 + 运算符添加替换项。
  3. 新的仍然会在末尾包含替换字符。
const str = 'Hello World.';

const replaced = str.slice(0, -1) + '!';
console.log(replaced); // ?️ Hello World!

我们传递给 String.slice 方法的参数是:

  • start 索引 – 要包含在返回字符串中的第一个字符的索引。
  • stop 索引 – 上升到但不包括该索引。 负索引表示距字符串末尾的偏移量。

通过获取字符串的一部分,但不包括最后一个字符,我们可以用一个或多个字符替换它。

如果我们需要用多个字符替换最后一个字符,这种方法也适用。

const str = 'Hello World.';

const replaced = str.slice(0, -1) + '!!!';
console.log(replaced); // ?️ Hello World!!!

slice 方法不改变原始字符串的内容,它返回一个包含原始字符串的一部分的新字符串。

另一种但也是非常常见的方法是使用 String.replace 方法。

使用 replace() 替换字符串中的最后一个字符

使用 String.replace() 方法替换字符串中的最后一个字符,例如 const replaced = str.replace(/.$/, ‘replacement’);。 replace 方法将返回一个新字符串,其中最后一个字符被提供的替换字符替换。

const str = 'Hello World.';

const replaced = str.replace(/.$/, '!');
console.log(replaced); // ?️ Hello World!

我们传递给 replace 方法的参数是:

  1. 要在字符串中匹配的正则表达式
  2. 正则表达式第一个匹配项的字符串替换

点号 . 在我们正则表达式中的字符匹配任何单个字符。

$ 字符匹配字符串的末尾。

这满足了我们匹配和替换字符串中最后一个字符的要求。

如果您在阅读正则表达式时需要帮助,请查看 MDN 提供的正则表达式速查表。

与使用 replace() 相比,我更喜欢使用 slice() 方法,因为许多开发人员不熟悉正则表达式。