Javascript正则表达式将给定字符串中的'n'个连续字符减少为单个字符

abb*_*tec 1 javascript regex string-formatting

例如:

var str = "......43.....DF.67....89...........";
while(str.search(/(..)/g) > -1) {
   str = str.replace(/(..)/g, '.');
}
str = str.replace('.', '-');
Run Code Online (Sandbox Code Playgroud)

产量:-43-DF-67-89-

步骤01:我正在替换两个'.' (即'..')到一个'.' 使用正则表达式.
步骤02:如果没有两个'.',那么最后我将替换一个'.' 用' - '

但我需要在没有循环的情况下一步到位.

Kev*_*err 5

您可以转义句点并使用+运算符指示一个或多个句点.

var str = "......43.....DF.67....89...........";

str = str.replace(/\.+/g, '-');

console.log(str);
Run Code Online (Sandbox Code Playgroud)