Я использую нулевой символ (\0
) в качестве разделителя, чтобы сохранить начальные белые пробелы строк после sprintf
. Но строки с нулевым символом не работают (в данном случае) с функцией Curses
addstr
.
Есть ли подходящий символ для замены \0
для этой цели?Что хорошего персонажа для разделения строк с ведущими пробелами?
#!/usr/bin/env perl
use warnings;
use 5.12.0;
sub routine {
my @list = @_;
@list = map{ "\0".$_."\0"; } @list;
# ...
# ...
@list = map{ sprintf "%35.35s", $_ } @list;
# ...
# ...
my $result = $list[5];
$result =~ s/\A\s+\0//;
$result =~ s/\0\s+\z//;
return $result;
}
Что именно вы делаете, что это вскрышные пропуска? 'Sprintf'? – TLP
Я думаю, вы должны использовать [substr] (http://perldoc.perl.org/functions/substr.html) вместо 'sprintf'. – cjm
Это проблема [XY] (http://www.perlmonks.org/?node=XY%20Problem). Что на самом деле пытается «рутинная»? – ikegami