- 締切済み
型を調べる
変数の型を調べる関数か演算子はありませんか? 数字型なのか文字型なのか判別したいです。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- hara_peko
- ベストアンサー率28% (11/38)
回答No.2
perlの変数は文字として扱えば文字となり、数字として扱 えば数字になります。
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
回答No.1
Perlでは、表面上数値型、文字型というタイプはありません。 数値として扱えば数値(変換できるところまで変換する)に、 文字列として扱えば文字列になります。 なので、数値かどうかを調べるには 通常は、(文字列として扱って)数値として解釈できる並びになっているかを検査する必要があります。 パターンマッチングを使うのが定番かと思いますが 5.8.1以降は use Scalar::Util qw(looks_like_number); を使うことで、Perlが受け入れ可能な数値かどうかを検査することができます。 ただし2進数8進数16進数及びアンダーバーのある数値は偽になります。