Javascript正则表达式以减少';n';给定字符串中相同的连续字符到单个字符

Javascript正则表达式以减少';n';给定字符串中相同的连续字符到单个字符,javascript,regex,string-formatting,Javascript,Regex,String Formatting,Ex: var str = "......43.....DF.67....89..........."; while(str.search(/(..)/g) > -1) { str = str.replace(/(..)/g, '.'); } str = str.replace('.', '-'); 输出:-43-DF-67-89- 步骤01:我正在使用正则表达式将两个“.”(即“..”)替换为一个“.”。 步骤02:如果没有更多的两个“.”,那么最后我将用“-”替换一个“.” 但

Ex:

var str = "......43.....DF.67....89...........";
while(str.search(/(..)/g) > -1) {
   str = str.replace(/(..)/g, '.');
}
str = str.replace('.', '-');
输出:-43-DF-67-89-

步骤01:我正在使用正则表达式将两个“.”(即“..”)替换为一个“.”。
步骤02:如果没有更多的两个“.”,那么最后我将用“-”替换一个“.”


但是我需要一步完成,不需要循环。

您可以跳过周期,并使用+运算符指示一个或多个周期

var str=“..43..DF.67..89..”;
str=str.replace(/\.+/g,'-');

console.log(str)漂亮干净。我喜欢!你说的“蒙面”是什么意思?它有特殊的含义吗?例如:在UI中,当显示CC时,我们将使用masted字符显示,当发送回api时,我们需要使用野生字符转换。任何建议请让我知道。