迹忆客 专注技术分享

当前位置:主页 > 学无止境 > WEB前端 > JavaScript >

使用JavaScript将字符串中的下划线替换为空格

作者:迹忆客 最近更新:2022/12/23 浏览次数:

要用字符串中的空格替换下划线,请调用 replaceAll() 方法,将下划线和空格作为参数传递给它,例如 str.replaceAll('_', ' ')replaceAll 方法将返回一个新字符串,其中每个下划线都被一个空格替换。

const str = 'apple_pear_melon';

// ✅ without regular expression
const result1 = str.replaceAll('_', ' ');
console.log(result1); // 👉️ "apple pear melon"

// ✅ with regular expression
const result2 = str.replace(/_+/g, ' ');
console.log(result2); // 👉️ "apple pear melon"

replaceAll 示例将每个下划线替换为一个空格,而 replace 方法将一个或多个相邻的下划线替换为一个空格。

我们将以下 2 个参数传递给 String.replaceAll 方法:

  1. 我们要在字符串中匹配的子字符串
  2. 每个匹配要替换的值

replaceAll 方法不会改变原始字符串,它会返回一个新字符串。 字符串在 JavaScript 中是不可变的。

另一种方法是使用 String.replace 方法。

使用 replace 将字符串中的下划线替换为空格

要用字符串中的空格替换下划线:

  1. 使用以下正则表达式调用 replace() 方法 - /_+/g
  2. 用包含空格的字符串替换每个匹配项。
  3. replace 方法将返回一个新字符串,其中所有下划线都替换为空格。
const str = 'apple_pear_melon';

const result2 = str.replace(/_+/g, ' ');
console.log(result2); // 👉️ "apple pear melon"

我们传递给 replace() 方法的第一个参数是正则表达式,第二个参数是正则表达式的每个匹配项的替换。

正斜杠 // 标记正则表达式的开始和结束。

正则表达式匹配下划线。

加号 + 与前面的项目(下划线)匹配一次或多次。 换句话说,我们认为多个下划线彼此相邻是一个匹配项,并将它们替换为一个空格。

我们使用了 g (全局)标志,因为我们想要匹配字符串中出现的所有下划线,而不仅仅是第一次出现的。

如果只想用空格替换字符串中的第一个下划线,请删除 g 标志。

const str = 'apple_pear_melon';

const replaceFirst = str.replace(/_+/, ' ');
console.log(replaceFirst); // 👉️ "apple pear_melon"

如果在阅读正则表达式方面需要帮助,请查看我们的正则表达式教程

可能存在我们必须处理的极端情况 - 字符串可能以下划线开头或结尾,在这种情况下我们可能希望删除前导或尾随空格。

// 👇 ️starts and ends with underscore
const str = '_apple_pear_melon_';

const result3 = str.replaceAll('_', ' ').trim();
console.log(result3); // 👉️ "apple pear melon"

String.trim 方法从字符串中删除任何前导或尾随空格(空格、制表符、换行符)。

console.log('    apple    '.trim()); // 👉️ "apple"

为了处理这种边缘情况,我们只需在用空格替换下划线后调用 trim() 方法。

另一种常用的替代方法是使用 String.splitArray.join 方法。

const str = '_apple_pear_melon_';

const result4 = str.split('_').join(' ').trim();
console.log(result4); // 👉️ "apple pear melon"

我们传递给 split() 方法的唯一参数是我们要拆分字符串的分隔符。

该方法返回一个子字符串数组。

// 👇️ ['one', 'two', 'three']
console.log('one_two_three'.split('_'));

然后我们在数组上调用 join() 方法并传递一个空格作为分隔符。

// 👇️ "one two three"
console.log('one_two_three'.split('_').join(' '));

选择哪种方法是个人喜好的问题。 我会选择 replaceAll 方法,因为我发现它最直接、可读性和直观性。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

MySQL 中将字符串附加到现有字段

发布时间:2023/05/08 浏览次数:63 分类:MySQL

本文我们将学习使用 CONCAT() 和 CONCAT_WS() 函数在 MySQL 字段中连接或附加字符串值。使用 CONCAT() 和 CONCAT_WS() 将字符串附加到 MySQL 中的现有字段

MySQL 将字符串拆分成行

发布时间:2023/05/08 浏览次数:68 分类:MySQL

在本文中,我们将讨论什么是将字符串拆分为行以及如何创建一个自执行函数。 我们主要讨论 SUBSTRING_INDEX() 方法以及一些示例以轻松理解该概念。

在 MongoDB 中将字符串转换为日期

发布时间:2023/04/20 浏览次数:63 分类:MongoDB

MongoDB 是一个越来越受欢迎的优秀平台。 在它提供的各种功能中,MongoDB 还允许您将数据从一种类型转换为另一种类型。本文介绍了在各种版本的 MongoDB 中将字符串转换为日期字段的方法。

如何从 Python 中的字符串中删除第一个字符

发布时间:2023/04/11 浏览次数:118 分类:Python

在Python中,要删除一个字符串的第一个字符,可以使用切片操作或者字符串方法。 方法一:使用切片操作 在Python中,可以使用切片操作来获取字符串的子字符串。切片操作使用方括号

如何从 Python 中的字符串中删除特殊字符

发布时间:2023/04/11 浏览次数:272 分类:Python

在Python中,可以使用多种方法来删除字符串中的特殊字符。在本文中,我们将介绍一些最常见的方法。 方法一:使用replace()方法删除特殊字符 可以使用字符串的 replace() 方法来删除字符

如何在 Python 中将字符串转换为双精度

发布时间:2023/04/11 浏览次数:191 分类:Python

在Python中,将字符串转换为双精度浮点数(double)可以使用内置的 float() 函数。在本文中,我们将介绍如何使用 float() 函数将字符串转换为双精度浮点数,并讨论一些相关问题。 使用

如何在 C++ 中把字符串转换为小写

发布时间:2023/04/09 浏览次数:63 分类:C++

介绍了如何将 C++ std::string 转换为小写的方法。当我们在考虑 C++ 中的字符串转换方法时,首先要问自己的是我的输入字符串有什么样的编码

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便