使用Regex将字符替换为特定字符

问题描述 投票:0回答:2

我有一个字符串“000-2.50”或“00-12.50”或“0-120.50”,我想用@cc将零号替换为减号“ - ”。

我想以“@@@ - 2.50”或“@@ - 12.50”或“@ -120.50”结束。如何使用Regex实现这一目标?

javascript regex
2个回答
1
投票

使用正向前瞻查找所有后跟短划线的零:

方法1:

0(?=[^-]*-)

JS代码:

console.log(
  "000-2.50".replace(/0(?=[^-]*-)/g, "@")
);

方法2

或者,如果您只想要前导零:

console.log(
  "000-2.50".replace(/^0+(?=-)/g, function(match) {
      return "@".repeat(match.length);
  })
)

0
投票

要从字符串的开头替换每个0,如何使用sticky flag y

var str = '000-2.50';

var res = str.replace(/0/gy, '@');

console.log(res);
© www.soinside.com 2019 - 2024. All rights reserved.