2
我試圖匹配一個數字與String::Substitution
;如果數字不爲零,它工作正常。如果數字爲零,則替換空字符串而不是數字。例如:匹配零與字符串:: Substitution
use strict;
use warnings;
use Data::Dump;
use String::Substitution;
my @data = qw(0 1);
for (@data) {
my $str = $_;
my $regex = qr/(\d)/;
my $replace = '$1';
my $result_str = String::Substitution::gsub_copy($str, $regex, $replace);
my @m = $str =~ /$regex/g;
dd $result_str;
dd @m;
}
輸出是:
""
0
1
1
預期輸出是:
0
0
1
1
一些奇怪的事情正在發生。試圖找出什麼 – ikegami
@ikegami我認爲在源代碼https://metacpan.org/source/RWSTAUNER/String-Substitution-1.001/lib/String/Substitution.pm中存在#95行的錯誤。應該是'map {($$ _)//''}(1.. $# - )'注意定義或者'//'不是常規或者'||'如源代碼那樣。 –
是的,這就是問題。 – ikegami