++Diary++

2003年08月07日の日記

Perl覚え書き
『「リストへの代入をscalar contextで評価すると、代入の右辺によって生み出される要素の数が返される。』
これを利用したのがsn_dairy.cgiの以下の記述です。

unless (($HoD->{form}{year},$HoD->{form}{month}) = $HoD->{form}{list} =~ /^(\d{4})(\d{2})$/) {
&error("エラーです\n",$HoD->{config});
}

$HoD->{form}{list} =~ /^(\d{4})(\d{2})$/
という式でマッチしてcaptureされた結果をlist contextで評価するので、
$HoD->{form}{year}と$HoD->{form}{month}にマッチした値がそれぞれ代入されます。
ここでマッチがされないと、何の結果も返されないのでその数は0となり、unlessでの評価の際に偽となります。
2003年08月07日(木)   No.33

この記事へのコメント

この記事へのコメントは以下のフォームからどうぞ
Name
E-Mail
URL
感想
(1000文字まで)
Pass

No. PASS
 OR AND
スペースで区切って複数指定可能
<<  2003年08月 >>
     12
3456789
10111213141516
17181920212223
24252627282930
31      

2003年08月07日(木)
Perl覚え書き

++HOME++

[Admin] [TOP]
shiromuku(fs4)DIARY version 3.20