12

How can I trim a text string in my Angular application?

Example

{{ someobject.name }} 

someobject.name results in "name abc"

What I like to achieve is name to be "nameabc" (remove all whitespaces).

I already created a pipe and included this in the typescript file and module)

PIPE:

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 }} still results in "name abc" instead of "nameabc" }}

0

5 Answers 5

18

According to the docs, the trim() method removes trailing and leading whitespaces, not those in the middle.

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

If you want to remove all whitespaces use the replace function:

"name abc".replace(/\s/g, ""); 
Sign up to request clarification or add additional context in comments.

4 Comments

I would use /\s*/g to increase performance, but upvote for you anyway.
Thank you for the feedback.How do I use this in my pipe/edit my pipe.
Exactly like you do now, just use replace instead of trim when returning from your transform function
thanks I already fixed it before reading this. Thank you very much
3

trim() only removes whitespaces from the start and end of a string:

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

have a look here to remove whitespaces between strings:

Replace all whitespace characters

the relevant part is to use it like:

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

1 Comment

Link-only answers are not considered ideal at SO. They can die and rot. Please include the relevant information here, in your post.
2
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, ""); } } 

2 Comments

You should explain why the OP solution doesn't work and how yours works
stackblitz.com/edit/angular-pipe-remove-spaces Here's a implementation of @Nirav's solution
0

Replace all the whitespace between string

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

let str = "name abc"

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

Comments

-11

In my case this is bad:

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

Solution:

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

=S

2 Comments

This doesn't appear to be related to the question. They want to remove whitespace inside a result of a variable, not avoid whitespace around it...
This is not a related answer. Understand the question then answer.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.