从 JavaScript 中的字符串中删除/替换所有空格
使用 String.replace()
方法从字符串中删除所有空格,例如 str.replace(/\s/g, '')
。
replace()
方法将通过用空字符串替换它们来删除字符串中的所有空白字符。
const str = ' A B C D ';
// ✅ 从字符串中删除所有空格(包括空格、制表符和换行符)
const noWhitespace = str.replace(/\s/g, '');
console.log(noWhitespace); // 👉️ 'ABCD'
// ✅ 仅删除字符串中的空格
const noSpaces = str.replace(/ /g, '');
console.log(noSpaces); // 👉️ 'ABCD'
如果需要替换字符串中的所有空格,请将替换字符串指定为 String.replace()
的第二个参数。
const str = 'www jiyik com';
const spacesRelaced = str.replace(/ /g, '+');
console.log(spacesRelaced); // 👉️ www+jiyik+com
代码示例将所有空白字符替换为加号 +
。
String.replace()
方法返回一个新字符串,其中一个、一些或所有正则表达式的匹配项被替换为提供的替换项。
该方法采用以下参数:
- pattern 要在字符串中查找的模式。 可以是字符串或正则表达式。
- replacement 一个字符串,用于将匹配的子字符串替换为提供的模式。
我们传递给 replace()
方法的第一个参数是一个正则表达式。
const str = ' A B C D ';
const noWhitespace = str.replace(/\s/g, '');
console.log(noWhitespace); // 👉️ 'ABCD'
正斜杠 //
标记正则表达式的开始和结束。
\s
特殊字符匹配空格、制表符和换行符。
我们使用 g
(全局)标志来指定我们要匹配字符串中出现的所有空白字符,而不仅仅是第一次出现的字符。
const str = ' A \n B \t C \n D ';
const noWhitespace = str.replace(/\s/g, '');
console.log(noWhitespace); // 👉️ 'ABCD'
replace()
方法采用的第二个参数是替换字符串。
如果我们需要从字符串中删除所有空格,请指定一个空字符串作为替换。
相反,如果我们需要用不同的字符替换字符串中的空格,请将替换字符串作为第二个参数传递给 String.replace
。
const str = 'www jiyik com';
const spacesRelaced = str.replace(/ /g, '+');
console.log(spacesRelaced); // 👉️ www+jiyik+com
代码示例将所有空白字符替换为加号 +
。
仅从字符串中删除/替换空格
前面的代码示例从字符串中删除所有空白字符,包括空格、制表符和换行符。
如果只想从字符串中删除空格,请使用以下正则表达式。
const str = ' A B C D ';
const noSpaces = str.replace(/ /g, '');
console.log(noSpaces); // 👉️ 'ABCD'
我们只在标记正则表达式开头和结尾的正斜杠之间指定了一个空格。
g
(全局)标志用于删除字符串中出现的所有空格,而不仅仅是第一次出现的空格。
String.replace()
方法不会更改原始字符串,它会返回一个新字符串。 字符串在 JavaScript 中是不可变的。
或者,我们可以使用 replaceAll()
方法。
使用 replaceAll() 删除/替换字符串中的所有空格
使用 String.replaceAll()
方法从字符串中删除所有空格,例如 str.replaceAll(/\s/g, '')
。
replaceAll()
方法将通过用空字符串替换它们来删除字符串中的所有空白字符。
const str = ' A B C D ';
const noWhitespace = str.replaceAll(/\s/g, '');
console.log(noWhitespace); // 👉️ 'ABCD'
String.replaceAll()
方法返回一个新字符串,其中所有匹配的模式都被提供的替换项替换。
该方法采用以下参数:
- pattern 要在字符串中查找的模式。 可以是字符串或正则表达式。
- replacement 一个字符串,用于将匹配的子字符串替换为提供的模式。
仅使用 replaceAll() 替换/删除字符串中的空格
在此特定场景中,使用 replaceAll()
方法优于 String.replace
没有任何好处。
但是,如果我们只需要从字符串中删除空格(不包括制表符和换行符),则可以将字符串而不是正则表达式传递给 replaceAll()
方法。
const str = ' A B C D ';
const noWhitespace = str.replaceAll(' ', '');
console.log(noWhitespace); // 👉️ 'ABCD'
我们没有将正则表达式传递给
replaceAll()
方法,而是传递了一个包含空格的字符串。
replaceAll()
方法通过用空字符串替换它们来删除所有空格。
**
请注意
**,此方法仅从字符串中删除空格(而不是制表符和换行符)。
如果我们还想删除制表符和换行符 \n
,请将正则表达式传递给该方法。
const str = ' A B C D ';
const noWhitespace = str.replaceAll(/\s/g, '');
console.log(noWhitespace); // 👉️ 'ABCD'
如果需要替换字符串中的空格,请将替换字符串指定为 str.replaceAll()
的第二个参数。
const str = 'www jiyik com';
const spacesReplaced = str.replaceAll(' ', '^');
console.log(spacesReplaced); // 👉️ 'www^jiyik^com'
代码示例将字符串中的所有空格替换为插入符号 ^。
如果我们必须经常替换字符串中的空格,我们还可以创建一个可重用的函数。
function replaceAllSpaces(string, replacement) {
return string.replaceAll(' ', replacement);
}
// 👇️ fql-jiyik
console.log(replaceAllSpaces('fql jiyik', '-'));
// 👇️ fql!jiyik!com
console.log(replaceAllSpaces('fql jiyik com', '!'));
我们定义了一个函数,它将一个字符串和一个替换项作为参数,并替换字符串中出现的所有空格。
或者,我们可以使用 String.split()
和 Array.join()
方法删除/替换字符串中的空格。
使用 String.split() 删除/替换字符串中的所有空格
要从字符串中删除所有空格:
-
使用
split()
方法在每次出现空格时将字符串拆分为数组。 -
使用
join()
方法将数组连接成一个没有分隔符的字符串。
const str = 'fql jiyik com';
const withoutSpaces = str.split(' ').join('');
console.log(withoutSpaces); // 👉️ 'fqljiyikcom'
如果需要替换字符串中的所有空格,请在调用 Array.join()
时指定替换字符串。
const str = 'fql jiyik com';
const withoutSpaces = str.split(' ').join('^');
console.log(withoutSpaces); // 👉️ 'fql^jiyik^com'
我们使用 String.split()
方法在每个空格上拆分字符串。
const str = 'www jiyik com';
// 👇️ [ 'www', 'jiyik', 'com' ]
console.log(str.split(' '));
String.split()
方法接受一个分隔符,并在每次出现所提供的分隔符时将字符串拆分为一个数组。
String.split()
方法采用以下 2 个参数:
- separator 描述每个拆分应该发生在哪里的模式。
- limit 一个整数,用于指定要包含在数组中的子字符串数的限制。
最后一步是对所有带或不带分隔符的数组元素使用 Array.join()
方法。
如果省略了分隔符参数的值,则数组元素用逗号 ,
连接。
如果分隔符参数设置为空字符串,则数组元素之间没有任何字符连接。
const str = 'www jiyik com';
const withoutSpaces = str.split(' ').join('');
console.log(withoutSpaces); // 👉️ 'wwwjiyikcom'
如果我们需要经常替换字符串中的空格,请定义一个可重用的函数。
function replaceAllSpaces(string, replacement) {
return string.split(' ').join(replacement);
}
// 👇️ fql-jiyik
console.log(replaceAllSpaces('fql jiyik', '-'));
// 👇️ fql^jiyik
console.log(replaceAllSpaces('fql jiyik', '^'));
该函数将一个字符串和一个替换项作为参数,并替换字符串中出现的所有空格。
当我们将一个空字符串传递给 split()
方法时,我们只根据空格进行拆分(不是制表符或换行符)。
如果我们还需要在制表符和换行符上进行拆分,请将正则表达式传递给 String.split()
方法。
const str = 'www jiyik com';
const withoutSpaces = str.split(/\s/).join('');
console.log(withoutSpaces); // 👉️ 'wwwjiyikcom'
\s
特殊字符涵盖所有空白字符(空格、制表符和换行符)。
总结
选择哪种方法是个人喜好的问题。
如果我们只需删除/替换字符串中的空格(而不是所有空白字符),请使用 replaceAll
方法来避免使用正则表达式。
// ✅ 从字符串中删除所有空格
const str = 'www jiyik com';
const result = str.replaceAll(' ', '');
console.log(result); // 👉️ wwwjiyikcom
可以使用相同的方法替换字符串中的所有空格,我们只需指定一个替换字符串即可。
// ✅ 替换字符串中的所有空格
const str = 'www jiyik com';
const result = str.replaceAll(' ', '^');
console.log(result); // 👉️ www^jiyik^com
相关文章
使用 CSS 和 JavaScript 制作文本闪烁
发布时间:2023/04/28 浏览次数:146 分类:CSS
-
本文提供了使用 CSS、JavaScript 和 jQuery 使文本闪烁的详细说明。
在 PHP 变量中存储 Div Id 并将其传递给 JavaScript
发布时间:2023/03/29 浏览次数:69 分类:PHP
-
本文教导将 div id 存储在 PHP 变量中并将其传递给 JavaScript 代码。
在 JavaScript 中从字符串中获取第一个字符
发布时间:2023/03/24 浏览次数:93 分类:JavaScript
-
在本文中,我们将看到如何使用 JavaScript 中的内置方法获取字符串的第一个字符。
在 JavaScript 中获取字符串的最后一个字符
发布时间:2023/03/24 浏览次数:141 分类:JavaScript
-
本教程展示了在 javascript 中获取字符串最后一个字符的方法