如何去除文本中的空格

How to remove whitespace in text

如何在我的 Angular 应用程序中 trim 文本字符串?

示例

{{ someobject.name }}  

someobject.name 结果为 "name abc"

我想实现的是名字 "nameabc" (删除所有空格)。

我已经创建了一个管道并将其包含在打字稿文件和模块中)

管道:

import { Pipe, PipeTransform } from "@angular/core";

@Pipe({ name: 'trim' })
export class TrimPipe implements PipeTransform {
    transform(value: any) {
        if (!value) {
            return '';
        }

        return value.trim();
    }
}

{{ someobject.name | trim }} 仍然导致 "name abc" 而不是 "nameabc" }}

根据文档,trim() 方法删除了 trailingleading 空格,而不是中间的空格.

https://www.w3schools.com/Jsref/jsref_trim_string.asp

如果要删除所有空格,请使用 replace 函数:

"name abc".replace(/\s/g, "");

trim() 仅删除字符串开头和结尾的空格:

https://www.w3schools.com/Jsref/jsref_trim_string.asp

查看此处以删除字符串之间的空格:

Replace all whitespace characters

相关部分是像这样使用它:

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

就我而言,这很糟糕:

<div>
  {{ someobject.name }}
</div>

解决方案:

<div>{{ someobject.name}}</div>

=S

替换字符串之间的所有空格

let spaceReg = new RegExp(" ",'g');

let str = "name abc"

str = str.replace(spaceReg,"");

import { Pipe, PipeTransform } from '@angular/core';

@Pipe({
  name: 'removeWhiteSpace'
})
export class RemoveWhiteSpacePipe implements PipeTransform {

  transform(value: any): any {
    if (value === undefined)
      return 'undefined';
    return value.replace(/\s/g, "");
  }

}