15 AĞUSTOS 2008, Cuma
Nasıl bir değişken Perl sayısal bir değeri vardır.
Bana verilen bir değişken sayısal olup olmadığını belirlemek için izin Perl ile basit bir yolu var mı? Şuna benzer bir şey:
if (is_number($x))
{ ... }
ideal olacaktır. -w
anahtarı kullanıldığında uyarılar atmak olmaz bir teknik kesinlikle tercih edilir.
CEVAP
26 AĞUSTOS 2008, Salı
Looks_like_number API iç Perl C kullanan Scalar::Util::looks_like_number()
() bunu yapmak için muhtemelen en etkili yolu olan işlevi.
Dizeleri "" ve "sonsuz" bir sayı olarak kabul edilir. ınf unutmayın
Örnek:
#!/usr/bin/perl
use warnings;
use strict;
use Scalar::Util qw(looks_like_number);
my @exprs = qw(1 5.25 0.001 1.3e8 foo bar 1dd inf infinity);
foreach my $expr (@exprs) {
print "$expr is", looks_like_number($expr) ? '' : ' not', " a number\n";
}
Verir bu çıktı:
1 is a number
5.25 is a number
0.001 is a number
1.3e8 is a number
foo is not a number
bar is not a number
1dd is not a number
inf is a number
infinity is a number
Ayrıca Bkz:
[perldoc Scalar::Util][1]
[perldoc perlapi][2]
Bunu Paylaş:
Nasıl değeri{kullanıcı} $Eclipse şablo...
Nasıl perl'de mantıksal değişken kulla...
Nasıl Perl bir dizi belirli bir değeri...
Nasıl maksimum değeri aşmadan bir deği...
Nasıl bir şablon kodu içinde bir değiş...