【问题标题】:How to remove whitespace in text如何去除文本中的空格
【发布时间】:2018-08-20 13:28:30
【问题描述】:

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

例子

{{ 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();
    }
}

{{ 某个对象名称 | trim }} 仍然会产生“name abc”而不是“nameabc”}}

【问题讨论】:

    标签: angular typescript pipe trim


    【解决方案1】:

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

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

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

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

    【讨论】:

    • 我会使用/\s*/g 来提高性能,但无论如何都要为你投票。
    • 感谢您的反馈。如何在我的管道中使用它/编辑我的管道。
    • 就像你现在做的那样,从你的transform函数返回时使用replace而不是trim
    • 感谢我在阅读本文之前已经修复了它。非常感谢
    【解决方案2】:

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

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

    看看这里删除字符串之间的空格:

    Replace all whitespace characters

    相关部分是这样使用的:

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

    【讨论】:

    • 在 SO 中,仅链接的答案并不理想。它们会死去腐烂。请在您的帖子中包含相关信息。
    【解决方案3】:
    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, "");
      }
    
    }
    

    【讨论】:

    【解决方案4】:

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

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

    let str = "name abc"

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

    【讨论】:

      【解决方案5】:

      在我的情况下这很糟糕:

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

      解决方案:

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

      =S

      【讨论】:

      • 这似乎与问题无关。他们想删除变量结果中的空格,而不是避免它周围的空格......
      • 这不是一个相关的答案。理解问题然后回答。
      猜你喜欢
      • 2013-10-17
      • 1970-01-01
      • 2010-09-26
      • 1970-01-01
      • 2020-12-07
      • 2017-11-03
      • 2010-11-19
      • 1970-01-01
      相关资源
      最近更新 更多