算術演算子は様々な計算処理を行うための演算子です。文字列演算子
- a + b
- aにbを加算する
- a++
- aに1を加算する(インクリメント)
- a - b
- aからbを減算する
- a--
- aから1を減算する(デクリメント)
- a * b
- aにbを乗算する
- a ** b
- aのべき乗
$i = 5; $i **= 3; # $i は 125- a / b
- aをbで除算する
文字列演算子では文字列の結合操作を行うことができます。比較演算子
- a . b
- aとbの文字列を結合する
$str = "Hello" . "World"; # "HelloWorld"- a .= b
- aとbの文字列を結合する
$str = "Hello"; $str .= "World"; # "HelloWorld"
比較演算子はスカラー変数の値によって、数値または文字での比較処理を行います。置換演算子
- a eq b
- 文字列 a, bのEqual
- a ne b
- 文字列 a, bのNot Equal
- a lt b
- 文字列 a, bのLess than
- a gt b
- 文字列 a, bのGreater than
- a le b
- 文字列 a, bのLess than Equal
- a ge b
- 文字列 a, bのGreater than Equal
- a cmp b
- 文字列 a, bの比較
- a = b
- 数値 a, bのEqual
- a != b
- 数値 a, bのNot Equal
- a < b
- 数値 a, bのLess than
- a > b
- 数値 a, bのGreater than
- a <= b
- 数値 a, bのLess than Equal
- a >= b
- 数値 a, bのGreater than Equal
- a <==> b
- 数値 a, bの比較
正規表現された対象データを指定文字列に置き換える処理を行います。変換演算子
- s/正規表現/置換文字列/
- 正規表現にマッチした部分を、置換文字列で表記されている内容に置き換える
$msg =~ s/\n/<BR>/g; #改行コードをHTMLタグに置き換える
変換対象の文字を指定した文字に変換する処理を行います。ファイルテスト演算子
- tr/変換対象の文字/変換する文字/
- 変換対象となる文字を探し出して、変換する文字で変換する
$msg =~ tr/+/ /; # '+' を ' '(スペース)にする $msg =~ tr/a-z/A-Z/; # 小文字を大文字にする
ファイルテスト演算子では、ファイルやディレクトリの状態などをチェックするために使用すると便利です。ヌルリスト
- -r
- ファイルやディレクトリが読み出し可
- -w
- ファイルやディレクトリが書き込み可
- -x
- ファイルやディレクトリが実行可
# スクリプト count.pl が実行できるかチェックします if (-x "count.pl") {print "ファイルは実行可能です";}- -o
- ファイルやディレクトリのオーナー
- -R
- ファイルやディレクトリが実uid/gidで読み出し可
- -W
- ファイルやディレクトリが実uid/gidで書き込み可
- -X
- ファイルやディレクトリが実uid/gidで実行可
- -O
- ファイルやディレクトリが実uidの所有
- -e
- ファイルやディレクトリが存在する
# データファイル count.dat が存在するかチェックします if (-e "count.dat") {print "データファイルは存在します";} else {print "データファイルは存在しません";}- -z
- ファイルの大きさが0
- -s
- ファイルやディレクトリの大きさが0以外
- -f
- ファイルは通常ファイル
- -d
- ファイルはディレクトリ
- -l
- ファイルはシンボリックリンク
- -p
- ファイルは名前付きパイプ(FIFO)
- -S
- ファイルはソケット
- -b
- ファイルはブロック特殊ファイル
- -c
- ファイルはキャラクタ特殊ファイル
- -t
- ファイルハンドルはttyにオープンされている
- -u
- ファイルやディレクトリにseruidビットがセットされている
- -g
- ファイルやディレクトリにsergidビットがセットされている
ヌルリストは配列の初期化に使用します。
- 配列 = ()
- 配列の初期化を行う
@list = (); #空の配列を作成