Option Compare ステートメント

文字列データを比較するときに使用する既定の比較方法を宣言します。

構文

Option Compare { Binary | Text }  

指定項目

用語 定義
Binary 任意。 文字列比較は、文字の内部バイナリ表現から派生した並べ替え順序に基づきます。

この種類の比較は、文字列にテキストとして解釈されない文字を含めることができる場合に特に便利です。 この場合、大文字と小文字の区別など、アルファベットの等値比較にバイアスをかけないことをお勧めします。
Text 任意。 文字列比較は、システムのロケールによって決まる、大文字と小文字を区別しないテキストの並べ替え順序に基づきます。

この種類の比較は、文字列にすべてのテキスト文字が含まれており、大文字と小文字を区別しないことや類縁の文字など、アルファベットの等値を考慮して文字列を比較する場合に便利です。 たとえば、Aa は等しく、ÄäBb よりも前に位置すると見なされるようにできます。

Remarks

使用した場合、Option Compare ステートメントはファイル内で他のソース コード ステートメントよりも前に記述する必要があります。

Option Compare ステートメントでは、文字列の比較方法 (Binary または Text) を指定します。 既定のテキスト比較方法は Binary です。

Binary 比較では、各文字列の各文字の Unicode 数値が比較されます。 Text 比較では、現在のカルチャでの語彙的意味に基づいて各 Unicode 文字が比較されます。

Microsoft Windows では、並べ替え順序はコード ページによって決まります。 詳細については、「コード ページ」をご覧ください。

次の例では、英語/ヨーロッパ言語のコード ページ (ANSI 1252) の文字が、Option Compare Binary を使用して並べ替えられ、一般的なバイナリ並べ替え順序が生成されます。

A < B < E < Z < a < b < e < z < À < Ê < Ø < à < ê < ø

Option Compare Text を使用して同じコード ページの同じ文字を並べ替えると、次のテキスト並べ替え順序が生成されます。

(A=a) < (À = à) < (B=b) < (E=e) < (Ê = ê) < (Z=z) < (Ø = ø)

Option Compare ステートメントが指定されていない場合

ソース コードに Option Compare ステートメントが含まれていない場合は、[コンパイル] ページ、プロジェクト デザイナー (Visual Basic)[Option Compare] 設定が使用されます。 コマンド ライン コンパイラを使用した場合は、-optioncompare コンパイラ オプションによって指定された設定が使用されます。

注意

次の手順で参照している Visual Studio ユーザー インターフェイス要素の一部は、お使いのコンピューターでは名前や場所が異なる場合があります。 これらの要素は、使用している Visual Studio のエディションや独自の設定によって決まります。 詳細については、「IDE をカスタマイズする」をご覧ください。

IDE で Option Compare を設定するには

  1. ソリューション エクスプローラーでプロジェクトを選択します。 [プロジェクト] メニューの [プロパティ] をクリックします。

  2. [コンパイル] タブをクリックします。

  3. [Option Compare] ボックスに値を設定します。

プロジェクトを作成すると、 [コンパイル] タブの [Option Compare] 設定が [オプション] ダイアログ ボックスの [Option Compare] 設定に設定されます。 この設定を変更するには、 [ツール] メニューの [オプション] をクリックします。 [オプション] ダイアログ ボックスの [プロジェクトおよびソリューション] を展開し、 [VISUAL BASIC の既定値] をクリックします。 [Visual Basic の既定値] の初期の既定値は [バイナリ] です。

コマンド ラインで Option Compare を設定するには

  • vbc コマンドに -optioncompare コンパイラ オプションを含めます。

例 1

次の例では、Option Compare ステートメントを使用して、既定の文字列比較方法としてバイナリ比較を設定します。 このコードを使用するには、Option Compare Binary ステートメントのコメントを解除し、ソース ファイルの先頭に配置します。

' Option Compare Binary

Console.WriteLine("A" < "a")
' Output: True

例 2

次の例では、Option Compare ステートメントを使用して、既定の文字列比較方法として大文字と小文字を区別しないテキスト並べ替え順序を設定します。 このコードを使用するには、Option Compare Text ステートメントのコメントを解除し、ソース ファイルの先頭に配置します。

' Option Compare Text

Console.WriteLine("A" = "a")
' Output: True

関連項目