繁体   English   中英

JavaScript正则表达式用一个替换重复的字符

[英]JavaScript regex to replace repeated characters with one

我正在尝试使用正则表达式替换一些重复的字符:

var string = "80--40";
string = string.replace(/-{2}/g,"-");    // result is "80-40"

这将两个minus替换为一个,但是如何更改代码以便替换两个或更多? 我只想在数字之间出现一个减号。

将其更改为:

string = string.replace(/-{2,}/g,"-");

另一种方式是

string = string.replace(/-+/g,"-");

因为它取代了-只有一个-任何一个或多个实例。

{2}恰好匹配两个, +匹配一个或多个。

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

有关RegEx的更多信息, 请参阅MDN文档

您可以指定{x, y}以匹配xy之间的任意重复次数。 您也可以不使用上限或下限,因此请使用{2,}代替{2}来替换至少发生两次的匹配。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM