javascript - JS : How to remove white spaces only from inside of string

标签 javascript string whitespace removing-whitespace

我需要在 javascript 语言中仅删除字符串内部的空格。左侧和右侧可以有该空间。我没有找到解决方案...

也许是一些 native 函数?或者 sombedy 有一些正则表达式吗?

我只有:

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

但它也会删除两侧的空白。

我想要:

var str = "   s dasd   asd sad sa d   ";
str = str.replace(/\s+/g, '');
// output
"   sdasdasdsadsad   ";

最佳答案

您可以匹配并捕获前导/尾随空格,并使用反向引用恢复结果,并删除所有其他空格。

var str = "   some text  ";
str = str.replace(/(^\s+|\s+$)|\s+/g, '$1');
console.log("'",str,"'");

图案详细信息:

  • (^\s+|\s+$) - 第 1 组捕获一个或多个空格 1) 在字符串开头 (^\s+) 或 2)字符串末尾 (\s+$)
  • | - 或
  • \s+ - 字符串中其他位置有 1 个以上空格。

$1 是对插入到结果字符串中的捕获组内容的反向引用。

要也支持  ,请使用交替 (?:\s| ):

console.log("   s dasd   asd sad sa d   ".replace(/(^(?:\s| )+|(?:\s| )+$)|(?:\s| )+/g, '$1'));

关于javascript - JS : How to remove white spaces only from inside of string,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41487560/

相关文章:

javascript - 如何将三维数组分割为三个 for in 循环?

c++ - 使用 CodeGear C++ Builder 2009 将 unicode 字符串写入文件

javascript - 匹配除所有空格以外的任何内容的正则表达式

php - PHP 标签周围的空格导致 ajax 调用有额外的空格

javascript - 错误 TS2339 : Property 'Default' does not exist on type 'string' . **

javascript - 如何在 Google App Engine 上自动执行 Javascript 和 CSS 压缩?

javascript - 使用 CSS 或 JS 定位工具提示

javascript - 没有参数的当前 URL、散列、http(s) ://

java - 为什么我的字符串在经过 while 循环后不会更新?

javascript - 减少脉轮表中列之间的空白