Как узнать, имеет ли переменная числовое значение в Perl?
Первоначальный вопрос заключался perl в том, как определить, является perl ли переменная числовой, а perl5 не «имеет ли она числовое numbers значение».
Есть несколько perl операторов, которые имеют perl5 отдельные режимы работы для number числовых и строковых операндов, где perl "числовой" означает все, что numbers изначально было числом или perl когда-либо использовалось perl5 в числовом контексте (например, в perl $x = "123"; 0+$x
перед добавлением, $x
- это number строка, впоследствии она numbers считается числовой).
Один perl из способов сказать:
if ( length( do { no warnings "numeric"; $x & "" } ) ) {
print "$x is numeric\n";
}
Если numbers включена побитовая функция, которая perl делает &
только числовым оператором number и добавляет отдельный строковый perl5 оператор &.
, вы должны отключить perl5 его:
if ( length( do { no if $] >= 5.022, "feature", "bitwise"; no warnings "numeric"; $x & "" } ) ) {
print "$x is numeric\n";
}
(побитовое доступно в number Perl 5.022 и выше и включено perl5 по умолчанию, если вы use 5.028;
или numbers выше.)
perl
numbers
Как узнать, имеет ли переменная числовое значение в Perl?
Мы используем файлы cookies для улучшения работы сайта. Оставаясь на нашем сайте, вы соглашаетесь с условиями использования файлов cookies. Чтобы ознакомиться с нашими Положениями о конфиденциальности и об использовании файлов cookie, нажмите здесь.