Perlとは
CGIを実現するためのプログラミング言語の1つです。
UNIX上で利用できるプログラミング言語として、Larry Wall氏よって開発され、1987年に一般公開されました。
当初は、テキスト処理やファイル処理に重点を置いたものでしたが、徐々に機能拡張され、またボランティアによって、Windows や Macintosh などのUNIX以外のプラットフォームにも移植されて、急速に普及を遂げてきました。
Perlという名称は、英字の頭文字を取ったもので、次の2つのキーワードから成り立っています。
| Practical Extraction and Report Language | 実用データ取得レポート作成言語 |
| Pathologically Eclectic Rubbish Lister | 病的折衷主義のがらくた出力機 |
制御文
基本的なこと
変数の表記・変数の宣言
変数の宣言
$x;
- 変数の先頭$記号のある変数はスカラ変数と呼ぶ
- 変数名は英字とアンダースコアを自由に組み合わせることが出来る
- 変数名に数字も使うことが出来るが、変数名の先頭に数字を使った場合は英字やアンダースコアを使用できない
- 変数の大文字と小文字は区別される
型の種類
Perlの型の種類は変数名の先頭のプレフィクスによって決まる
スカラ変数 $
配列変数 @
連想配列(ハッシュ) %
サブルーチン &
型グロブ
- それぞれ独特のネームスペースと呼ばれるものを持っているので、スカラ、配列、連想配列で同じ名前を使っても、 名前の衝突を心配する必要はない
- 同じ識別子(変数名のプレフィクス以降の文字列のこと)を持つあらゆる値を表現するワイルドカードのようなものを型グロブという。
- 型グロブにより、同じ識別子を使っても型が違えば値を保持できるということ。
$Long_name = "Hello World" ;
@Long_name = (1,2,3,4) ;
short = *Long_name; # グロブの代入 [#i958c284]
print $short; # 表示( Hello World )
print $short[1] ; # 表示( 2 )
特殊変数 「$_」
変数を省略した記述が出来る
print ; # print $_ ; と同じ
while() # while( $_ = ) と同じ
/^abcd/ # $_ =~ /^abcd/ と同じ
for ( 1..10 ) # $_ をカウンタ1~10として使用
@week = ('sun', 'mon', 'tue', 'wed', 'thu', 'fri', 'sat');
foreach ( @week ){ # $_に一行ずつ代入
print ; # $_ の内容を出力
print "\n";
}
[結果]
sun
mon
tue
wed
thu
fri
sat
コメントの記述方法(1行表記)
print "hello world"; # ここからコメント文になります。
ここはもうコメント文ではありません!!エラーになります。
#この行はすべてコメントになります!!
コメントが連続する行に渡る場合
print "こんにちは\n";
=pod
ここはコメント行になります。
ここもコメント行になります。
=cut
print "さようなら\n;
変数と文字リテラルの区切り方
$x = "index";
$y = "${x}.htm"; # $yの値は"index.htm"