VBScriptで使用する演算子
VBScriptで使用される演算子は VisualBasicと同じです。しかし PerlやJavaScriptとは若干の違いがあり、Perlや JavaScriptで使用出来ても VBScriptでは使用出来ないものもあるので注意してください。
またプログラムを書いた事が無いという方のために簡単な例を説明しておきます。下の例をご覧になって下さい。
a = b + c
プログラムを記述した事の無い方には、変数 aの値と変数 b、cの和が等しい。と言う意味にも捉えられるかもしれませんが、これはプログラムの世界では変数 b、cの和を変数 aへ代入する。と言う意味になります。「もう知っているよ!!」とおっしやる方も多いと思いますが、そういう方はどんどん進んでいって下さい。
算術演算子
基本的に数値に対し行う演算子(+、-、*、/以外にも複数あります)
| 例 |
説明 |
| a + b |
a と b を足す |
| a - b |
a から b を引く |
| a * b |
a と b をかける |
| a / b |
a を b で割る |
| a Mod b |
a を b で割った余り ※1 |
| a \ b |
a を b で割った整数の値 |
|
Perl や JavaScript にはインクリメント[++] とデクリメント[--] という演算子もありましたが VBScriptでは使用できません。
※1. 「 % 」 と誤って記述していたのを修正(2006/4/17)ご指摘どうもありがとうございました。m(__)m
比較演算子
比較演算子とは、値の大小関係を評価します。
| 例 |
説明 |
| a = b |
等しい |
| a <> b |
などしくない |
| a > b |
a が b より大きい |
| a >= b |
a が b 以上 |
| a < b |
a が b より小さい |
| a <= b |
a が b 以下 |
| a Is b |
aオブジェクト が b オブジェクトと等しい |
|
以下は比較演算子を使用したサンプルです。変数 aの値が 100以上であれば「値は 100以上です。」と表示し、100以下であれば「値は100未満です。」と表示します。
Dim a
a = 100
If a >= 100 Then
Response.Write("値は100以上です。")
Else
Response.Write("値は100未満です。")
End If
真と偽
上で比較演算子は [ 値の大小関係を評価します ] と書きましたが、評価してどうするんでしょう?? 代入演算子などは値が代入されていますので結果が目に見えていますね。 この比較演算子は 評価して条件が成立するか ( 真 ) しないか ( 偽 ) の論理値を返すものなんです。
論理値これは ( true 、 false ) の二つという事は前途してありますが、比較演算子では比較の関係が成立すればその式自体が真、又成立しなければ偽の値になります。この返された論理値を使い条件分岐するの代表が上の例で使用している If文です。
関係が成り立つので真となる
100 = 100
関係が成り立たないので偽となる
100 <> 100
論理演算子
論理演算子は左辺、右辺の二つを評価して論理値 ( 真 / 偽 ) を返します。
| 例 |
説明 |
優先度 |
| Not a |
aの否定、偽の時に真を返し、真の時に偽を返します |
1 |
| a And b |
左辺右辺が共に真であれば真、それ以外は偽を返します |
2 |
| a Or b |
左辺か右辺のどちらかが真であれば真、それ以外は偽を返します |
3 |
|
'// 左辺右辺ともに真なので真となります。
true And true
'// 右辺が偽なので偽となります。
true And false
'// 左辺が真なので真となります。
true Or false
'// 真の否定で偽となります。
Not true
'// ややこしいですがこれは偽となります。
Not true Or true And Not true
文字列結合演算子
二つの文字列を結合します。
| 例 |
説明 |
| a & b |
変数 aと変数 bを結合します |
|
a = "Hello "
b = "World"
c = a & b
上の例で変数 cは aと bが結合されて [ Hello World ] になります。 文字列連結演算子 ( & ) は算術演算子ではありませんが、優先順位はどの算術演算子よりも低く、どの比較演算子よりも高くなります。
|