在字符串中的每个逗号后添加空格
Add Space after each Comma in a String using JavaScript
使用该replaceAll()
方法在字符串中的每个逗号后添加一个空格,例如str.replaceAll(',', ', ')
. 该replaceAll()
方法将返回一个新字符串,其中所有出现的逗号都替换为逗号和空格。
索引.js
const str = 'a,b,c'; const spaced = str.replaceAll(',', ', '); console.log(spaced); // 👉️ "a, b, c"
我们将以下 2 个参数传递给
String.replaceAll
方法:
- 我们要在字符串中匹配的子字符串
- 每场比赛的替换
出于我们的目的,我们用一个逗号和一个空格替换每个逗号。
该
replaceAll
方法不改变原来的字符串,它返回一个新的字符串。字符串在 JavaScript 中是不可变的。replaceAll
Internet Explorer 不支持该方法。如果您需要支持浏览器,请改用
String.replace
方法。
要在字符串中的每个逗号后添加一个空格,请对字符串调用该replace()
方法并将每个逗号替换为一个逗号和一个空格,例如
str.replace(/,/g, ', ')
. 该replace
方法将返回一个新字符串,其中每个逗号后跟一个空格。
索引.js
// Supported in IE const str = 'a,b,c'; const spaced = str.replace(/,/g, ', '); console.log(spaced); // 👉️ "a, b, c"
我们传递给该replace()
方法的第一个参数是一个正则表达式。
正斜杠/ /
标记正则表达式的开始和结束。
在正则表达式内部,我们匹配一个逗号,并使用
g
(global) 标志来匹配字符串中逗号的每一次出现,而不仅仅是第一次出现。如果您在阅读正则表达式时需要帮助,请查看
来自 MDN的正则表达式速查表。这是迄今为止最好的。
我们传递给该replace
方法的第二个参数是每个匹配项的替换字符串。
如果您不喜欢正则表达式,可以使用
String.split()
方法。
要在字符串中的每个逗号后添加一个空格:
- 在字符串上调用该
split()
方法并将其拆分为每个逗号 - 对结果调用
join()
方法并用逗号和空格连接 - 新字符串的每个逗号后跟一个空格
索引.js
// Supported in IE const str = 'a,b,c'; const spaced = str.split(',').join(', '); console.log(spaced); // 👉️ "a, b, c"
我们传递给该split()
方法的唯一参数是一个分隔符。该方法返回在每次出现所提供的分隔符时拆分的子字符串数组。
索引.js
const str = 'a,b,c'; // 👇️ ['a', 'b', 'c'] console.log(str.split(','));
最后一步是使用
Array.join
方法并将数组连接成一个字符串。
我们传递给该join
方法的参数是一个分隔符——在我们的例子中是一个逗号后跟一个空格。
这是用逗号和空格替换每个逗号的更手动的方法。
我的首选方法是尽可能使用该
replaceAll
方法,因为它可以在没有正则表达式的情况下使用,并且非常直观且易于阅读。