比較演算子
比較演算子は、値の比較に使用します。比較できるのは、等価性、より大きい、より小さい、値が他の2値の間にあるかどうか、などです。
is、are、=、equals、equal to、is equal to、does equal、are equal、the same
挙動:2つの値の等価性を比較し、trueまたはfalseを生成します。両方の値が数値として有効であれば、数値比較が行われ、 そうでなければ、テキスト比較が行われます。通常、テキスト比較では大文字と小文字は区別されません。大文字と小文字を区別して比較させるには、considering caseオプションを使用するか、caseSensitiveプロパティをtrue に設定します(詳細は大文字小文字の区別を参照)。is演算子を使った文字列比較時のデフォルト演算では、大文字と小文字の違いは無視されます。語句としては、considering/ignoringの代わりに、with/withoutを使うこともできます。
2つの数値を比較するときは、その違いが0.00000000001未満の場合に、等しいと評価されます。これは、計算中に生じ得る小さな誤差に対応するためです。
2つのオペランドが共に同じ内部型(日付/時刻値、リスト、プロパティリスト、ツリーなど)の場合は、その値の型の規則に従って値同士が直接比較されます。実行する比較の型を明示的に操作するときは、as演算子(または関連関数)を使用します(詳細はas演算子を参照)。
構文:
オペランド1 is オペランド2 {considering case | ignoring case}
値1 and 値2 are equal
例:
if answer = 7 then ...
例:
if name is "sarah" then ...
例:
if prefix is "Mac" considering case then ...
例:
put 5 * 3 and 15 are equal -- True
例:
put 5 * 3 is the same as 15 --True
is not、are not、<>、does not equal、is not equal to、isn't、aren't、aren't equal、doesn't equal、isn't equal to、isn't the same、are not the same
挙動:2つの値の非等価性を比較し、trueまたはfalseを生成します。両方の値が数値として有効であれば、数値比較が行われ、 そうでなければ、テキスト比較が行われます。通常、テキスト比較では大文字と小文字は区別されません。大文字と小文字を区別して比較させるには、considering caseオプションを使用します(詳細は大文字小文字の区別を参照)。
is not演算子を使った文字列比較時のデフォルト演算では、大文字と小文字の違いは無視されます。語句としては、considering/ignoringの代わりに、with/withoutを使うこともできます。2つの数値を比較するときは、その違いが0.00000000001を超える場合に、等しくないと評価されます。これは、計算中に生じ得る小さな誤差に対応するためです。
2つのオペランドが共に同じ内部型(日付/時刻値、リスト、プロパティリスト、ツリーなど)の場合は、その値の型の規則に従って値同士が直接比較されます。実行する比較の型を明示的に操作するときは、as演算子(または関連関数)を使用します(詳細はas演算子を参照)。
構文:
例:
if answer is not 7 then ...
例:
if name isn't "sarah" then ...
例:
if prefix is not "Mac" considering case then ...
例:
put "CAT" and "cat" aren't equal considering case --True
例:
put "cat" and "dog" are not the same --True
例:
put 4 + 6 isn't the same as 2 * 12
is less than、<、comes before、is not greater than or equal to、is earlier than
挙動:ある値が別の値よりも小さいかどうかを比較し、trueまたはfalseを生成します。両方の値が数値として有効であれば、数値比較が行われ、 そうでなければ、テキスト比較が行われます。通常、テキスト比較では大文字と小文字は区別されません。大文字と小文字を区別して比較させるには、consideringcaseオプションを使用するか、caseSensitiveプロパティをtrue に設定します。
less than演算子を使った文字列比較時のデフォルト演算では、大文字と小文字の違いは無視されます。語句としては、considering/ignoringの代わりに、with/withoutを使うこともできます。
2つのオペランドが共に同じ内部型(日付/時刻値、リスト、プロパティリスト、ツリーなど)の場合は、その値の型の規則に従って値同士が直接比較されます。実行する比較の型を明示的に操作するときは、as演算子(または関連関数)を使用します(詳細はas演算子を参照)。
構文:
例:
if answer < 7 then ...
例:
if name comes before "Beetle" then ...
例:
if prefix is less than "Mac" ignoring case then ...
is greater than、>、is more than、comes after、is not less than or equal to、is later than、is past
挙動:ある値が別の値よりも大きいかどうかを比較し、trueまたはfalseを生成します。両方の値が数値として有効であれば、数値比較が行われ、 そうでなければ、テキスト比較が行われます。通常、テキスト比較では大文字と小文字は区別されません。大文字と小文字を区別して比較させるには、considering caseオプションを使用するか、caseSensitiveプロパティをtrue に設定します。
greater than演算子を使った文字列比較時のデフォルト演算では、大文字と小文字の違いは無視されます。語句としては、considering/ignoringの代わりに、with/withoutを使うこともできます。
2つのオペランドが共に同じ内部型(日付/時刻値、リスト、プロパティリスト、ツリーなど)の場合は、その値の型の規則に従って値同士が直接比較されます。実行する比較の型を明示的に操作するときは、as演算子(または関連関数)を使用します(詳細はas演算子を参照)。
構文:
例:
if answer > 7 then ...
例:
if name comes after "Hannibal" then ...
例:
if prefix is greater than "Mac" ignoring case then ...
is less than or equal to、<=、does not come after、is not greater than、is not later than、is at most、is no more than、is not past
挙動:ある値が別の値以下かどうかを比較し、trueまたはfalseを生成します。両方の値が数値として有効であれば、数値比較が行われ、 そうでなければ、テキスト比較が行われます。通常、テキスト比較では大文字と小文字は区別されません。大文字と小文字を区別して比較させるには、considering caseオプションを使用するか、caseSensitiveプロパティをtrue に設定します。
less than or equal to演算子を使った文字列比較時のデフォルト演算では、大文字と小文字の違いは無視されます。語句としては、considering/ignoringの代わりに、with/withoutを使うこともできます。
2つのオペランドが共に同じ内部型(日付/時刻値、リスト、プロパティリスト、ツリーなど)の場合は、その値の型の規則に従って値同士が直接比較されます。実行する比較の型を明示的に操作するときは、as演算子(または関連関数)を使用します(詳細はas演算子を参照)。
構文:
例:
if answer <= 8 then ...
例:
if name does not come after "Frank" then ...
例:
if the number of items in guestList is no more than 12 then ...
例:
if prefix is not greater than "Mac" considering case then ...
is greater than or equal to、>=、does not come before、is not less than、is not earlier than、is at least、is no less than
挙動:ある値が別の値以上かどうかを比較し、trueまたはfalseを生成します。両方の値が数値として有効であれば、数値比較が行われ、 そうでなければ、テキスト比較が行われます。通常、テキスト比較では大文字と小文字は区別されません。大文字と小文字を区別して比較させるには、considering caseオプションを使用するか、caseSensitiveプロパティをtrue に設定します。
greater than or equal to演算子を使った文字列比較時のデフォルト演算では、大文字と小文字の違いは無視されます。語句としては、considering/ignoringの代わりに、with/withoutを使うこともできます。
2つのオペランドが共に同じ内部型(日付/時刻値、リスト、プロパティリスト、ツリーなど)の場合は、その値の型の規則に従って値同士が直接比較されます。実行する比較の型を明示的に操作するときは、as演算子(または関連関数)を使用します(詳細はas演算子を参照)。
構文:
例:
if answer >= 7 then ...
例:
if name does not come before "Zoo" then ...
例:
if customer's age is at least 17 then admitToRMovie
例:
if prefix is not less than "Mac" considering case then ...
between、is between、is not between、comes between、does not come between
挙動:ある値が他の2値の間に入るかどうかをテストし、trueまたはfalseを生成します。between演算子は、 「値>=小さい方の境界値、かつ、値<=大きい方の境界値」と同じことです。テスト対象の値は、両方の境界値と比較されます。境界値同士の間にあるか、どちらかの境界値と等しい場合に、結果がtrueとなります。範囲の境界値を指定するときは、昇順でも降順でも構いません。
テスト対象の値は両方の「境界値」と比較され、 どちらかの境界値と等しいか、どちらかの境界値よりも大きくどちらかの境界値よりも小さい場合に、between式によってtrueと評価されます。そうでない場合は、 falseと評価されます。境界値1は、境界値2よりも大きくても小さくても構いません。テスト対象の値は、内部で各境界値と個別に比較されるため、それぞれに異なる型の比較を用いることもできます(一方には数値比較、他方にはテキスト比較など)。
両方の境界値が数値として有効であれば、数値比較が行われ、 そうでなければ、テキスト比較が行われます。通常、テキスト比較では大文字と小文字は区別されません。大文字と小文字を区別して比較させるには、considering caseオプションを使用するか、caseSensitiveプロパティをtrue に設定します。
構文:
value {is} {not} between 境界値1 and 境界値2 {considering case | ignoring case}
value [comes between | does {not} come between] 境界値1 and 境界値2 {considering case | ignoring case}
例:
if answer is between 7 and 11 then ...
例:
if wd does not come between "Zoo" and "Zygote" ignoring case then ...
例:
if height is between minAllowedHeight and maxAllowedHeight then ...