Aion-Format

 view release on metacpan or  search on metacpan

t/aion/format.t  view on Meta::CPAN


<!----------- The work itself --------------->
This book text!
<!------------------------------------------->
};

$s =~ $re;
my $result = {%+};
local ($::_g0 = do {$result}, $::_e0 = do {{author_link => "/to/book/link", author_name => "A. Alis", title => "Grivus campf"}}); ::is_deeply $::_g0, $::_e0, '$result # --> {author_link => "/to/book/link", author_name => "A. Alis", title => "Grivus c...

# 
# ## num ($number)
# 
# Добавляет разделители между цифрами числа.
# 
::done_testing; }; subtest 'num ($number)' => sub { 
local ($::_g0 = do {num +0}, $::_e0 = "0"); ::ok $::_g0 eq $::_e0, 'num +0         # => 0' or ::diag ::_string_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;
local ($::_g0 = do {num -1000.3}, $::_e0 = "-1 000.3"); ::ok $::_g0 eq $::_e0, 'num -1000.3    # => -1 000.3' or ::diag ::_string_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;

# 
# Разделителем по умолчанию является неразрывный пробел. Установите разделитель и десятичную точку так же, как:
# 

local ($::_g0 = do {num [1000, "#"]}, $::_e0 = "1#000"); ::ok $::_g0 eq $::_e0, 'num [1000, "#"]         		# => 1#000' or ::diag ::_string_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;
local ($::_g0 = do {num [-1000.3003003, "_", ","]}, $::_e0 = "-1_000,3003003"); ::ok $::_g0 eq $::_e0, 'num [-1000.3003003, "_", ","]   # => -1_000,3003003' or ::diag ::_string_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;

# 
# См. также `Number::Format`.
# 
# ## rim ($number)
# 
# Переводит положительные целые числа в **римские цифры**.
# 
::done_testing; }; subtest 'rim ($number)' => sub { 
local ($::_g0 = do {rim 0}, $::_e0 = "N"); ::ok $::_g0 eq $::_e0, 'rim 0       # => N' or ::diag ::_string_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;
local ($::_g0 = do {rim 4}, $::_e0 = "IV"); ::ok $::_g0 eq $::_e0, 'rim 4       # => IV' or ::diag ::_string_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;
local ($::_g0 = do {rim 6}, $::_e0 = "VI"); ::ok $::_g0 eq $::_e0, 'rim 6       # => VI' or ::diag ::_string_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;
local ($::_g0 = do {rim 50}, $::_e0 = "L"); ::ok $::_g0 eq $::_e0, 'rim 50      # => L' or ::diag ::_string_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;
local ($::_g0 = do {rim 49}, $::_e0 = "XLIX"); ::ok $::_g0 eq $::_e0, 'rim 49      # => XLIX' or ::diag ::_string_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;
local ($::_g0 = do {rim 505}, $::_e0 = "DV"); ::ok $::_g0 eq $::_e0, 'rim 505     # => DV' or ::diag ::_string_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;

# 
# **Римские цифры** после 1000:
# 

local ($::_g0 = do {rim 49_000}, $::_e0 = "XLIX M"); ::ok $::_g0 eq $::_e0, 'rim 49_000      # => XLIX M' or ::diag ::_string_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;
local ($::_g0 = do {rim 49_000_000}, $::_e0 = "XLIX M M"); ::ok $::_g0 eq $::_e0, 'rim 49_000_000  # => XLIX M M' or ::diag ::_string_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;
local ($::_g0 = do {rim 49_009_555}, $::_e0 = "XLIX IX DLV"); ::ok $::_g0 eq $::_e0, 'rim 49_009_555  # => XLIX IX DLV' or ::diag ::_string_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;

# 
# См. также:
# 
# * [Roman](https://metacpan.org/pod/Roman) это простой конвертер.
# * [Math::Roman](https://metacpan.org/pod/Math::Roman) это еще один конвертер.
# * [Convert::Number::Roman](https://metacpan.org/pod/Convert::Number::Roman) имеет ООП-интерфейс.
# * [Number::Convert::Roman](https://metacpan.org/pod/Number::Convert::Roman) – еще один интерфейс ООП.
# * [Text::Roman](https://metacpan.org/pod/Text::Roman) конвертирует стандартные и милхарные римские числа.
# * [Roman::Unicode](https://metacpan.org/pod/Roman::Unicode) использует цифры ↁ (5 000), ↂ (1000) и так далее.
# * [Acme::Roman](https://metacpan.org/pod/Acme::Roman) добавляет поддержку римских цифр в коде Perl (`I + II -> III`), но использует только операции `+`, `-` и `*`.
# * [Date::Roman](https://metacpan.org/pod/Date::Roman) — это объектно-ориентированное расширение Perl для обработки дат в римском стиле, но с арабскими цифрами (id ...
# * [DateTime::Format::Roman](https://metacpan.org/pod/DateTime::Format::Roman) – средство форматирования римских дат, но с арабскими цифрами (5 Kal Jun 2003).
# 
# ## round ($number, $decimal)
# 
# Округляет число до указанного десятичного знака.
# 
::done_testing; }; subtest 'round ($number, $decimal)' => sub { 
local ($::_g0 = do {round 1.234567, 2}, $::_e0 = do {1.23}); ::ok defined($::_g0) == defined($::_e0) && $::_g0 eq $::_e0, 'round 1.234567, 2  # -> 1.23' or ::diag ::_struct_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;
local ($::_g0 = do {round 1.235567, 2}, $::_e0 = do {1.24}); ::ok defined($::_g0) == defined($::_e0) && $::_g0 eq $::_e0, 'round 1.235567, 2  # -> 1.24' or ::diag ::_struct_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;

# 
# ## sinterval ($interval)
# 
# Создает человекочитаемый интервал.
# 
# Ширина результата — 12 символов.
# 
::done_testing; }; subtest 'sinterval ($interval)' => sub { 
local ($::_g0 = do {sinterval  6666.6666}, $::_e0 = "01:51:06.667"); ::ok $::_g0 eq $::_e0, 'sinterval  6666.6666 	# => 01:51:06.667' or ::diag ::_string_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;
local ($::_g0 = do {sinterval  6.6666}, $::_e0 = "00:00:06.667"); ::ok $::_g0 eq $::_e0, 'sinterval  6.6666 		# => 00:00:06.667' or ::diag ::_string_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;
local ($::_g0 = do {sinterval  .333}, $::_e0 = "0.33300000 s"); ::ok $::_g0 eq $::_e0, 'sinterval  .333 		# => 0.33300000 s' or ::diag ::_string_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;
local ($::_g0 = do {sinterval  .000_33}, $::_e0 = "0.3300000 ms"); ::ok $::_g0 eq $::_e0, 'sinterval  .000_33 		# => 0.3300000 ms' or ::diag ::_string_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;
local ($::_g0 = do {sinterval  .000_000_33}, $::_e0 = "0.330000 mks"); ::ok $::_g0 eq $::_e0, 'sinterval  .000_000_33 	# => 0.330000 mks' or ::diag ::_string_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;

# 
# ## sround ($number, $digits)
# 
# Оставляет `$digits` цифр после последнего нуля (сам 0 не учитывается).
# 
# По умолчанию `$digits` равен 2.
# 
::done_testing; }; subtest 'sround ($number, $digits)' => sub { 
local ($::_g0 = do {sround 10.11}, $::_e0 = do {10}); ::ok defined($::_g0) == defined($::_e0) && $::_g0 eq $::_e0, 'sround 10.11        # -> 10' or ::diag ::_struct_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;
local ($::_g0 = do {sround 12.11}, $::_e0 = do {12}); ::ok defined($::_g0) == defined($::_e0) && $::_g0 eq $::_e0, 'sround 12.11        # -> 12' or ::diag ::_struct_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;
local ($::_g0 = do {sround 100.11}, $::_e0 = do {100}); ::ok defined($::_g0) == defined($::_e0) && $::_g0 eq $::_e0, 'sround 100.11       # -> 100' or ::diag ::_struct_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;
local ($::_g0 = do {sround 133.11}, $::_e0 = do {133}); ::ok defined($::_g0) == defined($::_e0) && $::_g0 eq $::_e0, 'sround 133.11       # -> 133' or ::diag ::_struct_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;
local ($::_g0 = do {sround 0.00012}, $::_e0 = do {0.00012}); ::ok defined($::_g0) == defined($::_e0) && $::_g0 eq $::_e0, 'sround 0.00012      # -> 0.00012' or ::diag ::_struct_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;
local ($::_g0 = do {sround 1.2345}, $::_e0 = do {1.2}); ::ok defined($::_g0) == defined($::_e0) && $::_g0 eq $::_e0, 'sround 1.2345       # -> 1.2' or ::diag ::_struct_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;
local ($::_g0 = do {sround 1.2345, 3}, $::_e0 = do {1.23}); ::ok defined($::_g0) == defined($::_e0) && $::_g0 eq $::_e0, 'sround 1.2345, 3    # -> 1.23' or ::diag ::_struct_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;

# 
# ## trans ($s)
# 
# Транслитерирует русский текст, оставляя только латинские буквы и тире.
# 
::done_testing; }; subtest 'trans ($s)' => sub { 
local ($::_g0 = do {trans "Мир во всём Мире!"}, $::_e0 = "mir-vo-vsjom-mire"); ::ok $::_g0 eq $::_e0, 'trans "Мир во всём Мире!"  # => mir-vo-vsjom-mire' or ::diag ::_string_diff($::_g0, $::_e0); undef $::_g0; undef $::_e0;

# 
# ## transliterate ($s)
# 
# Транслитерирует русский текст.
# 
::done_testing; }; subtest 'transliterate ($s)' => sub { 
local ($::_g0 = do {transliterate "Мир во всём Мире!"}, $::_e0 = "Mir vo vsjom Mire!"); ::ok $::_g0 eq $::_e0, 'transliterate "Мир во всём Мире!"  # => Mir vo vsjom Mire!' or ::diag ::_string_diff($::_g0, $::_e0); undef $::_...

# 
# ## trapperr (&block)
# 
# Ловушка для **STDERR**.
# 



( run in 0.856 second using v1.01-cache-2.11-cpan-39bf76dae61 )