StrComp 関数 (Visual Basic)
更新 : 2007 年 11 月
文字列比較の結果により、-1、0、または 1 のいずれかを返します。
Public Shared Function StrComp( _
ByVal String1 As String, _
ByVal String2 As String, _
<Microsoft.VisualBasic.OptionCompareAttribute> _
Optional ByVal Compare As Microsoft.VisualBasic.CompareMethod _
) As Integer
パラメータ
String1
必ず指定します。任意の有効な文字列型 (String) の式を指定します。String2
必ず指定します。任意の有効な文字列型 (String) の式を指定します。Compare
省略可能です。文字列比較のタイプを指定します。Compare を省略すると、Option Compare 設定により比較のタイプが決定されます。
設定
引数 Compare には、次の値を指定します。
定数 |
説明 |
---|---|
Binary |
文字の内部バイナリ表現による並べ替え順序に基づいて、バイナリ比較を行います。 |
Text |
アプリケーションの現在のカルチャ情報によって決められた、大文字と小文字が区別されない並べ替え順序に基づいて、テキスト比較を行います。 |
戻り値
StrComp 関数の戻り値は次のとおりです。
条件 |
StrComp の戻り値 |
---|---|
String1 が String2 よりも先に来る |
-1 |
String1 と String2 が等価 |
0 |
String1 が String2 の後に来る |
1 |
例外
例外の種類 |
エラー番号 |
条件 |
---|---|---|
Compare の値が無効です。 |
非構造化エラー処理を使用する Visual Basic 6.0 アプリケーションをアップグレードする場合は、「エラー番号」列を参照してください(エラー番号を Number プロパティ (Err オブジェクト) と照らし合わせます)。しかし、可能な限り、このエラー処理は Visual Basic の構造化例外処理の概要 で置き換えてください。
解説
文字列は、先頭文字から英数字の並べ替え値に基づいて比較されます。バイナリ比較、テキスト比較、および並べ替え順序の詳細については、「Option Compare ステートメント」を参照してください。
セキュリティに関するメモ : |
---|
比較処理または大文字/小文字変換処理の結果に基づいてアプリケーションのセキュリティ関連の決定を下す場合は、その処理を String.Compare メソッドで実行し、comparisonType 引数に Ordinal または OrdinalIgnoreCase を渡してください。詳細については、「Visual Basic においてカルチャが文字列に与える影響」を参照してください。 |
使用例
StrComp 関数を使って文字列比較の結果を返す例を次に示します。3 番目の引数が省略された場合は、Option Compare ステートメントで定義された比較のタイプ、またはプロジェクトの既定の比較のタイプが実行されます。
' Defines variables.
Dim TestStr1 As String = "ABCD"
Dim TestStr2 As String = "abcd"
Dim TestComp As Integer
' The two strings sort equally. Returns 0.
TestComp = StrComp(TestStr1, TestStr2, CompareMethod.Text)
' TestStr1 sorts after TestStr2. Returns -1.
TestComp = StrComp(TestStr1, TestStr2, CompareMethod.Binary)
' TestStr2 sorts before TestStr1. Returns 1.
TestComp = StrComp(TestStr2, TestStr1)
必要条件
名前空間 : Microsoft.VisualBasic
モジュール : Strings
**アセンブリ :**Visual Basic ランタイム ライブラリ (Microsoft.VisualBasic.dll)