• 締切済み

クイズのCGIの一部にあるプログラムの意味

下記の「=~ /ハリソン/」、「eq '多寡'」、「=~ /^2\D*$/」のそれぞれの意味を教えてください。 ちなみに「ハリソン」、「多寡」、「/^2\D*$/(答えは2)」は答えです。 $r01 = $IN{'01'}; if($r01 =~ /ハリソン/){$gana++; push(@exito, '01'); } $r02 = $IN{'02'}; if($r02 =~ /^大隈/){$gana++; push(@exito, '02'); } $r03 = $IN{'03'}; if($r03 =~ /^湯川/){$gana++; push(@exito, '03'); } $r04 = $IN{'04'}; if($r04 eq '多寡'){$gana++; push(@exito, '04'); } $r05 = $IN{'05'}; if($r05 eq '日産'){$gana++; push(@exito, '05'); } $r06 = $IN{'06'}; if($r06 =~ /^バニラ/){$gana++; push(@exito, '06'); } $r07 = $IN{'07'}; if($r07 eq '碌' ){$gana++; push(@exito, '07'); } $r08 = $IN{'08'}; if($r08 =~ /中松/){$gana++; push(@exito, '08'); } $r09 = $IN{'09'}; if($r09 =~ /^2\D*$/){$gana++; push(@exito, '09'); } $r10 = $IN{'10'}; if($r10 eq 'アイルランド'){$gana++; push(@exito, '10'); }

みんなの回答

  • Kirishima
  • ベストアンサー率32% (155/480)
回答No.1

Perl等で $r01 =~ /ハリソン/ は、 ハリソンという文字列が $r01 に含まれているか調べる書き方です。 Perl講座 第9章 正規表現 正規表現の基本的な使用方法 http://www.rfs.jp/sb/perl/02/09.html ^2\D*$ は、 正規表現で、 行頭(^)が2で、その後に任意の文字数の数字以外の文字(\D*)で、行末($) という表記になりますので、先頭が半角の2で、後はほかの文字という入力内容ということになります。 Perl講座 第9章 正規表現 正規表現のメタ文字 http://www.rfs.jp/sb/perl/02/09.html

nkmyr
質問者

お礼

参考になれるサイトの紹介をありがとうございました。

関連するQ&A