如何用单个空格替换连续的特殊字符?使用JavaScript

时间:2018-07-16 04:02:46

标签: javascript

如何使用JavaScript用单个空格替换连续的特殊字符?

我的字符串:

var format = 'ASDFG#@!$QWER';

我正在使用以下代码:

format.replace(/[^a-zA-Z0-9 ]/g, ' ')

它将单个特殊字符替换为单个空格。我想用单个空格替换所有连续的特殊字符。

1 个答案:

答案 0 :(得分:2)

您可以使用+来表示一个或多个。因此,在您的情况下,您将使用:

var format='Test#@!$Test!#@Test#Test' 
let rep = format.replace(/[^a-zA-Z0-9 ]+/g, ' ') 

console.log(rep)

您也可以将\W+用于一个或多个非单词字符,但其中不包含_。它等效于/[^A-Za-z0-9_]/。您可以在[\W+_]+中加入它:

var format = 'Test#_@!$Test!#@Test#Test'
let rep = format.replace(/[\W_]+/g, ' ')

console.log(rep)