Size: a a a

2020 January 04

AP

Anton Petrusevich in Modern::Perl
в перле это всё не так просто. даже просто проинтерполировать число в строке может сделать его строкой
источник

VO

Vyacheslav Olkhovchenkov in Modern::Perl
это я уже понял, но мы это отбросим как небывальщину.
источник

AP

Anton Petrusevich in Modern::Perl
$ perl -MB -E '$a=1; $b="1"; $c=2.0; say B::class(B::svref_2object(\$a)); say B::class(B::svref_2object(\$b)); say B::class(B::svref_2object(\$c));  '
IV
PV
NV
источник

AP

Anton Petrusevich in Modern::Perl
если коротко, то PV —  строка
источник

AP

Anton Petrusevich in Modern::Perl
для большей полноты картины:
$ perl -MB -E '$a=1; $b="1"; $c=2.0; say B::class(B::svref_2object(\$a)); say B::class(B::svref_2object(\$b)); say B::class(B::svref_2object(\$c)); $a="$a"; say B::class(B::svref_2object(\$a));  '
IV
PV
NV
PVIV
источник

AP

Anton Petrusevich in Modern::Perl
варианты значений примерно следующие: IV, NV, PV, PVIV, PVNV, PVMG, REGEXP, PVGV, PVLV, PVAV, PVHV, PVCV, PVFM, PVIO
источник

AP

Anton Petrusevich in Modern::Perl
когда есть PV — значит было сгенерировано строковео значение
источник

AP

Anton Petrusevich in Modern::Perl
NV, IV, UV — числа
источник

AP

Andrei Protasovitski in Modern::Perl
Ivan Bessarabov
@PerlBanjoBot say "123\n" =~ /^\d+$/ ? 'number' : 'not number';
\d матчит туеву хучу символов в юникоде. [0-9] лучше.
источник

AP

Andrei Protasovitski in Modern::Perl
Чтобы в JSON попадало число, достаточно сделать 0+$str.
источник
2020 January 05

VG

Vadim Goncharov in Modern::Perl
Vyacheslav Olkhovchenkov
это я уже понял, но мы это отбросим как небывальщину.
нередкий случай вообще-то
источник

VO

Vyacheslav Olkhovchenkov in Modern::Perl
в моем случае будем считать что так быть не может по построению
источник

AP

Anton Petrusevich in Modern::Perl
Andrei Protasovitski
\d матчит туеву хучу символов в юникоде. [0-9] лучше.
я пробовал ставить /a — не помогает, не в этом дело
источник

В

Вертолетчик in Modern::Perl
\d - не правильно, если число нужно
источник

В

Вертолетчик in Modern::Perl
/^[1-9][0-9]*$/
источник

В

Вертолетчик in Modern::Perl
Ну или /^[+-]?[1-9][0-9]*$/ в зависимости от контекста
источник

В

Вертолетчик in Modern::Perl
А, ну и точку учесть надо
источник

В

Вертолетчик in Modern::Perl
Если надо
источник

В

Вертолетчик in Modern::Perl
Ещё могут быть варианты типа 0b.. 0x...
источник

IB

Ivan Bessarabov in Modern::Perl
А еще бывают отрицательные числа
источник