Typescript angular: удалить все пробелы из текстовых полей, но не вводить клавишу

#javascript #angular #typescript

#javascript #угловатый #машинописный текст

Вопрос:

У меня есть ниже, в котором удалены все пробелы, но, к сожалению, это также удалило клавишу ввода.

Я просто хочу, чтобы пробелы были удалены, но не клавиша enter.

     static stripDoubleSpaces(str: string): string {
    if (!!str) {
        return str.replace(/s /g, ' ');
    } else {
        return str;
    }
}
 

Ответ №1:

Вы можете сделать это просто с помощью:

 str.replace(/[ tr] /g,"");
 

Ответ №2:

Нажатие клавиши Enter — это в основном n символ и r возврат каретки. Вы можете использовать двойное отрицание для сопоставления всех пробелов, кроме r и n . s соответствует всем пробелам, S соответствует всем пробелам.

Если вы хотите удалить все параллельные пробелы до одного пробела:

 static stripSpaces(str: string): string {
    return (str || "").replace(/[^Srn] /g, " ")
}