Perlリファレンス
関数:A-C | D-F
| G-I | J-O
| P-R | S-T
| U-Z
演算子:
定義済み変数:
※Perl5.004のman
pageを参考にしています。
- ■getc( [ファイルハンドル]
) [デフォルトSTDIN]
- ファイルハンドルの現在の読み込み位置から次の1文字を読み込みます。
多バイト文字への対応はされていないので、正確には「次の1バイト」と言った方がよいでしょう。
- ■getlogin→CGIでは使い物にならない
-
- ■そのほかのgetやset......→CGIではあまり使われない
-
- ■glob( [ファイル名パターン]
) [デフォルト$_] [コンテキスト注意]
- ★リストコンテキスト
現在のディレクトリにあるファイルの名前のうち、第1引数「ファイル名パターン」で指定されるファイル名のリストを返します。具体的には、
@files = glob('*');
とするとすべてのファイル名が、
@files = glob('*.c');
とすると拡張子が.cのファイル名がすべて返されます。
★スカラーコンテキスト
上とおなじファイル名のリストを1つずつ返し、残りがなくなるとundefを返します。
while ( defined($fileName = glob('*.c')) ) { .... }
というふうに使うと、1つずつ該当するファイルを処理できます。
◇ワンポイントアドバイス
globの代わりに<*.c>などと書いても挙動は同じです。ただし見やすさから考えると、<>だとファイルハンドルから1行読み込む演算子と紛らわしいので、glob()を使う方がいいかもしれません。
- ■gmtime( [time]
) [デフォルトtime()=現在時刻] [コンテキスト注意]
- localtime()のGMT(世界標準時)版です。詳しくはlocaltime()を参照してください。
- ■goto ラベル
■goto &サブルーチン名
- 指定したラベルのついた所までジャンプします。
goto GOTO_LABEL;
print "これは出てこない";
GOTO_LABEL :
print "ここまで飛ぶ!";
また、サブルーチン名を渡した場合(goto
&sub_routine;)別のサブルーチンに制御を移します。具体的には
print &sub1;
sub sub1 {
goto &sub2;
print "A";
return "B";
}
sub sub2 {
print "C";
return "D";
}
のようなものを実行した場合、"CD"が表示されます。つまり、上の例でいうとgoto
&sub2;をsub1内で実行した時点で、あたかもsub2がsub1に化けたようなふるまいをし、sub1の残りの部分は実行されません。
◇ワンポイントアドバイス
goto文はできるだけ使わないようにしましょう……でないといったいどこに制御が移るのか分からなくなりがちです。
- ■grep(式,リスト)
■grep{ 式;式;... }
リスト [コンテキスト注意]
- ★リストコンテキスト
リスト内から「式」に合致する(=式が真を返す)要素を抜き出してきて、それを返します。例えば、
@shillests = grep(/SHILLEST/,@textlines);
とすると、@textlines内でSHILLESTという文字列が含まれるものを抜き出してきて@shillestsに格納します。
grepには「ブロック形式」(={
}でかこまれた部分)も使用可能です。元のリスト内の文字列は1つ1つ$_に代入されてきますので、これを複数の関数を使って解析することも可能です。
★スカラーコンテキスト
「式」に合致する要素数を返します。
※$_を変更すると、元のリスト内の文字も変更されてしまいます。注意してください。
- ■hex( [16進数]
) [デフォルト$_]
- 与えられた文字列を強制的に16進数だと解釈して、それに対応する10進数の値を返します。例えばhex('AF')は175を返します。
- ■import→Exporterモジュール
-
- ■index( 検索対象 , 検索文字列 , [検索開始位置]
)
- 検索対象の文字列内を最初から検索していき、「検索文字列」がはじめて現れるのは何文字目かを返します。検索を開始したい位置を指定すると、1文字目からではなく設定した位置から検索をはじめます。
なお、返される値は、1文字目に見つかった場合は0、2文字目は1...というふうに1少ない値が設定されます。また、見つからなかった場合は-1が返されますので注意してください(-1はif文などの条件式で使うと「真」と解釈されます!)
- ■int( [小数]
) [デフォルト$_]
- 整数部分(例:1.001も1.999も1)を返します。
- ■ioctl→使えない場合も多い・CGIではあまり使われない
-
Return : Perl
Top