SORU
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ş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • booba1234

    booba1234

    22 Temmuz 2006
  • DeAdPiXel6667

    DeAdPiXel666

    2 Ocak 2010
  • ICON

    ICON

    19 EKİM 2011