raino's knowledge base
enzan
最終更新:
raino
-
view
演算子
算術演算子
| 演算子 | 記述例 | 内容 |
| + | $a + 1 | $aを1増やす |
| - | $a - 1 | $aを1減らす |
| * | $a * $b | $aと$bの積 |
| / | $a / $b | $aと$bの商 |
| % | $a % $b | $aを$bで割った余り |
| ** | $a ** $b | $aを$b乗する |
| += | $a += 10 | $aに10を足す |
| -= | $a -= 10 | $aから10を引く |
| *= | $a *= 10 | $aに10を掛ける |
| /= | $a /= 10 | $aを10で割る |
| %= | $a %= 10 | $aを10で割った余りで$aを書き直す |
| **= | $a **= 10 | $aを10乗する |
| ++ | ++$a | インクリメント $aを1増やす |
| -- | --$a | デクリメント $aを1減らす |
| sqrt | sqrt(2) | 2の平方根を求める |
文字列演算子
| 演算子 | 記述例 | 内容 |
| . | - | 文字列を結合する |
| .= | - | 変数の末尾に文字列をくっつける |
| x | 文字列 x 5 | 文字列を指定回数だけ繰り返す |
数値の比較演算子
- 制御文で使用する条件文などを書く
| 演算子 | 記述例 | 内容 |
| < | $x < 4 | $xが4より小さいなら真 |
| $x > 4 | $xが4より大きいなら真 | |
| <= | $x <= 4 | $xが4以下なら真 |
| >= | $x >= 4 | $xが4以上なら真 |
| == | $x == $y | $xが$yと等しいなら真 |
| != | $x != $y | $xが$yと等しくないなら真 |
| <=> | $x <=> $y | 等しければ0 $xが大きければ1 $yが大きければ-1 |
文字列の比較演算子
- 制御文で使用する条件文などを書く
| 演算子 | 記述例 | 内容 |
| lt | $x lt "a" | $xが"a"より小さいなら真 |
| gt | $x gt "a" | $xが"a"より大きいなら真 |
| le | $x le "a" | $xが"a"以下なら真 |
| ge | $x ge "a" | $xが"a"以上なら真 |
| eq | $x eq $y | $xが$yと等しいなら真 |
| ne | $x ne $y | $xが$yと等しくないなら真 |
| cmp | $x <=> $y | 等しければ0 $xが大きければ1 $yが大きければ-1 |
※文字列は辞書順で後に出てくるほうが大きいとみなす。数字よりは文字のほうが大きい。大文字より小文字のほうが大きい。
論理演算子
| 演算子 | 記述例 | 内容 |
| && | $a && $b | 論理積 $aが偽なら$a ちがうなら$b |
| and | $a and $b | 論理積 $aが偽なら$a ちがうなら$b |
| 縦棒2コ | $a 縦棒2コ $b | 論理和 $aが真なら$a ちがうなら$b |
| or | $a or $b | 論理和 $aが真なら$a ちがうなら$b |
| ! | ! $a | 否定 $aが偽なら真 |
| not | not $a | 否定 $aが偽なら真 |
| xor | $a xor $b | 排他的論理和 $aか$bの片方だけが真なら真 |
マッチ演算子
- デフォルト変数を対象にパターンマッチを行う
- デフォルト変数以外を扱いたいときは $a =~ /パターン/ と記述する。
| 記述例 | 内容 |
| /パターン/ | 変数$_がパターンの一部に一致すれば真 |
| /パターン/i | 大文字小文字を無視する |
| s/置換前/置換後/ | マッチする文字列を一回だけ置換する |
| s/置換前/置換後/g | マッチする文字列を全て置換する |
| s/削除対象//g | マッチする文字列を削除 |
| /(パターン)/ | ()内を変数$1..に格納 |
| tr/xy/yx/ | 特定の文字と特定の文字を変換する(x→y,y→x) |
| tr/a-z/A-Z/ | 上の応用 小文字→大文字 |
※主に正規表現を利用してパターンマッチを行う。正規表現の機能をなくして文字列とみなす場合は記号の前に\を付与する。
ファイルチェック演算子
- 制御文などでファイルの属性をチェックする。
| 記述例 | 内容 |
| -e ファイル名 | 指定したファイルが存在すれば真 |
| -r ファイル名 | 指定したファイルを読むことができれば真 |
| -w ファイル名 | 指定したファイルに書くことができれば真 |
| -f ファイル名 | 指定したファイルが存在し一般ファイルなら真 |
| -d ファイル名 | 指定したファイルが存在しディレクトリなら真 |
| -T ファイル名 | 指定したファイルが存在しテキストファイルなら真 |
| -B ファイル名 | 指定したファイルが存在しバイナリファイルなら真 |
¥エスケープ
- 演算子じゃないけどここに書きます
| 使用記号 | 内容 |
| \n | 改行(newline) |
| \r | 復帰(return) |
| \t | タブ(tab) |
| \f | 改ページ(formfeed) |
| \b | バックスペース(backspace) |
| \a | ベル(bell) |
| \e | エスケープ(escape),ASCIIのエスケープ文字 |
| \007 | 8進数でASCIIコードを指定(←は007=ベル) |
| \x7f | 16進数でASCIIコードを指定(←は7f=削除文字) |
| \cC | コントロール文字(←はコントロールC) |
| \l | 次の一文字を小文字にする |
| \L | これ以降\Eまで小文字にする |
| \u | 次の一文字を大文字にする |
| \U | これ以降\Eまでを大文字にする |
| \Q | これ以降\Eまでの全ての非単語構成文字の前に\を挿入する |
| \E | \L,\U,\Qの効果を終了させる |