my $base64_image = encode_base64($buf); my $text = do { local( @ARGV, $/ ) = "test_template.svg" ; <> } ; $text =~ s/##([a-zA-Z0-9_\.]+)##//g; my $photo_count = 1; while ($text =~ s/\Q$base64_image//s){ $photo_count++; }