正则表达式 – 删除前导零但不全部为零

前端之家收集整理的这篇文章主要介绍了正则表达式 – 删除前导零但不全部为零前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如果值只包含0,我如何删除所有的前导零,但是最终为零?

例如:

my $number = "0000";

我想拥有:

my $number = "0";

我试过了:

$number =~ s/^0*//;

但这当然会在这种情况下删除所有的零.

这应该工作:
$number =~ s/^0*(\d+)$/$1/;

0    -> 0
0000 -> 0
0001 -> 1

编辑:结果是有点太复杂了.这也应该有效:

$number =~ s/0*(\d+)/$1/;

但我不知道哪个更好,取决于用例.

请查看Oesor的答案:它也很甜蜜,没有正则表达式.

猜你在找的正则表达式相关文章