替换所有空白字符

IT技术 javascript trim
2021-03-06 12:37:50

我想替换 JavaScript 中所有出现的空白字符(空格、制表符、换行符)。
怎么做?

我试过:

str.replace(/ /gi, "X")
6个回答

你要 \s

匹配单个空白字符,包括空格、制表符、换页符、换行符。

相当于

[ \f\n\r\t\v\u00a0\u1680\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]

火狐[ \f\n\r\t\v]IE


str = str.replace(/\s/g, "X");
在函数中,您可以返回 str.replace,因此您无需在该范围内进行分配。
2021-04-22 12:37:50
+1 用于记住表明该replace函数不会修改str,因此您必须将其分配回来。
2021-05-12 12:37:50
记住让 R 使用perl = TRUE,比如gsub(pattern = "[\\s]+", ..., perl = TRUE)
2021-05-21 12:37:50

\s是一个元字符,涵盖所有空白。你不需要让它不区分大小写——空白没有大小写。

str.replace(/\s/g, "X")

如果我们想用单个字符更改所有多个连接的空格,我们也可以使用它:

str.replace(/\s+/g,'X');

在这里查看它的实际效果:https : //regex101.com/r/d9d53G/1

解释

/ \s+/克

  • \s+匹配任何空白字符(等于[\r\n\t\f\v ]
  • + 量词- 在一次和无限次之间匹配,尽可能多次,根据需要回馈(贪婪)

  • 全局模式标志
    • g 修饰符:全局。所有比赛(第一场比赛后不返回)
正则表达式加号 (+) 对我用下划线 (_) 替换空白类型字符的用例很有用,如果我的用户胖手指一个额外的空格,我真的不想显示额外的 _。谢谢你!
2021-04-23 12:37:50

你试过\s吗?

str.replace(/\s/g, "X");

如果你使用

str.replace(/\s/g, "");

它替换所有空格。例如:

var str = "hello my world";
str.replace(/\s/g, "") //the result will be "hellomyworld"