正则表达式 – 删除前导零但不全部为零
发布时间:2020-12-14 06:30:24 所属栏目:百科 来源:网络整理
导读:如果值只包含0,我如何删除所有的前导零,但是最终为零? 例如: my $number = "0000"; 我想拥有: my $number = "0"; 我试过了: $number =~ s/^0*//; 但这当然会在这种情况下删除所有的零. 这应该工作: $number =~ s/^0*(d+)$/$1/;0 - 00000 - 00001 - 1
如果值只包含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的答案:它也很甜蜜,没有正则表达式. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |