Perl入門ゼミ

テキスト処理、Linuxサーバー管理、Web開発ならPerl
  1. Perl
  2. 数値
  3. here

文字列が整数を表現しているかを判定する

文字列が整数を表現しているかを判定するには、正規表現を利用します。正規表現で最初から終わりまで数字でできているかどうかを判定します。

/^[0-9]+$/

整数であるかどうかを判定するには上記の正規表現に、先頭に+か-が指定されてもかまわないということを付け加えるだけです。

/^[+-]?[0-9]+$/

サンプル

変数が数値かどうかを判定するサンプルです。

use strict;
use warnings;

print "1: 文字列が正しい数値を表現しているかを判定する\n";

my $num1 = "345";
# 文字列が数字のみであるかどうかの判定
# 「先頭から数字がひとつ以上続いて末尾にいたる」と読む
if ($num1 =~ /^[0-9]+$/) {
  print "$num1は数字のみの文字列です。\n";
}

# 整数であるかどうかの判定
my $num2 = "-123";

# 「先頭に+か-があってもなくても良くて、その後に
# 数字がひとつ以上続いて末尾にいたる」と読む
if ($num2 =~ /^[+-]?[0-9]+$/) { 
  print "$num2は整数です。\n";
}
Giblog