String.CompareOrdinal String.CompareOrdinal String.CompareOrdinal String.CompareOrdinal Method

Definition

Vergleicht zwei String-Objekte, indem die numerischen Werte der entsprechenden Char-Objekte in den Zeichenfolgen ausgewertet werden.Compares two String objects by evaluating the numeric values of the corresponding Char objects in each string.

Überlädt

CompareOrdinal(String, Int32, String, Int32, Int32) CompareOrdinal(String, Int32, String, Int32, Int32) CompareOrdinal(String, Int32, String, Int32, Int32) CompareOrdinal(String, Int32, String, Int32, Int32)

Vergleicht Teilzeichenfolgen zweier angegebener String-Objekte, indem die numerischen Werte der entsprechenden Char-Objekte in den Teilzeichenfolgen ausgewertet werden.Compares substrings of two specified String objects by evaluating the numeric values of the corresponding Char objects in each substring.

CompareOrdinal(String, String) CompareOrdinal(String, String) CompareOrdinal(String, String) CompareOrdinal(String, String)

Vergleicht zwei String-Objekte, indem die numerischen Werte der entsprechenden Char-Objekte in den Zeichenfolgen ausgewertet werden.Compares two specified String objects by evaluating the numeric values of the corresponding Char objects in each string.

CompareOrdinal(String, Int32, String, Int32, Int32) CompareOrdinal(String, Int32, String, Int32, Int32) CompareOrdinal(String, Int32, String, Int32, Int32) CompareOrdinal(String, Int32, String, Int32, Int32)

Vergleicht Teilzeichenfolgen zweier angegebener String-Objekte, indem die numerischen Werte der entsprechenden Char-Objekte in den Teilzeichenfolgen ausgewertet werden.Compares substrings of two specified String objects by evaluating the numeric values of the corresponding Char objects in each substring.

public:
 static int CompareOrdinal(System::String ^ strA, int indexA, System::String ^ strB, int indexB, int length);
public static int CompareOrdinal (string strA, int indexA, string strB, int indexB, int length);
static member CompareOrdinal : string * int * string * int * int -> int
Public Shared Function CompareOrdinal (strA As String, indexA As Integer, strB As String, indexB As Integer, length As Integer) As Integer

Parameter

strA
String String String String

Die erste im Vergleich zu verwendende Zeichenfolge.The first string to use in the comparison.

indexA
Int32 Int32 Int32 Int32

Der Anfangsindex der Teilzeichenfolge in strA.The starting index of the substring in strA.

strB
String String String String

Die zweite im Vergleich zu verwendende Zeichenfolge.The second string to use in the comparison.

indexB
Int32 Int32 Int32 Int32

Der Anfangsindex der Teilzeichenfolge in strB.The starting index of the substring in strB.

length
Int32 Int32 Int32 Int32

Die maximale Anzahl der zu vergleichenden Zeichen der Teilzeichenfolgen.The maximum number of characters in the substrings to compare.

Gibt zurück

Eine 32-Bit-Ganzzahl mit Vorzeichen, die die lexikalische Beziehung der beiden verglichenen Elemente angibt.A 32-bit signed integer that indicates the lexical relationship between the two comparands.

WertValue BedingungCondition
Kleiner als 0 (null)Less than zero Die Teilzeichenfolge in strA ist kleiner als die Teilzeichenfolge in strB.The substring in strA is less than the substring in strB.
ZeroZero Die Teilzeichenfolgen sind gleich, oder length ist 0.The substrings are equal, or length is zero.
Größer als 0 (null)Greater than zero Die Teilzeichenfolge in strA ist größer als die Teilzeichenfolge in strB.The substring in strA is greater than the substring in strB.

Ausnahmen

strA ist nicht null und indexA ist größer als strALength.strA is not null and indexA is greater than strA.Length.

- oder --or- strB ist nicht null und indexB ist größer als strB.Length.strB is not null and indexB is greater than strB.Length.

- oder --or- indexA, indexB oder length ist ein negativer Wert.indexA, indexB, or length is negative.

Beispiele

Im folgenden Beispiel wird veranschaulicht CompareOrdinal , Compare dass und verschiedene Sortier Reihenfolgen verwenden.This following example demonstrates that CompareOrdinal and Compare use different sort orders.

using namespace System;
using namespace System::Globalization;
int main()
{
   String^ strLow = "abc";
   String^ strCap = "ABC";
   String^ result = "equal to ";
   int x = 0;
   int pos = 1;
   
   // The Unicode codepoint for 'b' is greater than the codepoint for 'B'.
   x = String::CompareOrdinal( strLow, pos, strCap, pos, 1 );
   if ( x < 0 )
      result = "less than";

   if ( x > 0 )
      result = "greater than";

   Console::WriteLine( "CompareOrdinal(\"{0}\"[{2}], \"{1}\"[{2}]):", strLow, strCap, pos );
   Console::WriteLine( "   '{0}' is {1} '{2}'", strLow[ pos ], result, strCap[ pos ] );

   // In U.S. English culture, 'b' is linguistically less than 'B'.
   x = String::Compare( strLow, pos, strCap, pos, 1, false, gcnew CultureInfo( "en-US" ) );
   if ( x < 0 )
      result = "less than";
   else
   if ( x > 0 )
      result = "greater than";

   Console::WriteLine( "Compare(\"{0}\"[{2}], \"{1}\"[{2}]):", strLow, strCap, pos );
   Console::WriteLine( "   '{0}' is {1} '{2}'", strLow[ pos ], result, strCap[ pos ] );
}
using System;
using System.Globalization;

class Test 
{
	public static void Main(String[] args) 
	{
	String strLow = "abc";
	String strCap = "ABC";
	String result = "equal to ";
	int x = 0;
	int pos = 1;

// The Unicode codepoint for 'b' is greater than the codepoint for 'B'.
	x = String.CompareOrdinal(strLow, pos, strCap, pos, 1);
	if (x < 0) result = "less than";
	if (x > 0) result = "greater than";
	Console.WriteLine("CompareOrdinal(\"{0}\"[{2}], \"{1}\"[{2}]):", strLow, strCap, pos);
	Console.WriteLine("   '{0}' is {1} '{2}'", strLow[pos], result, strCap[pos]);

// In U.S. English culture, 'b' is linguistically less than 'B'.
	x = String.Compare(strLow, pos, strCap, pos, 1, false, new CultureInfo("en-US"));
	if (x < 0) result = "less than";
	else if (x > 0) result = "greater than";
	Console.WriteLine("Compare(\"{0}\"[{2}], \"{1}\"[{2}]):", strLow, strCap, pos);
	Console.WriteLine("   '{0}' is {1} '{2}'", strLow[pos], result, strCap[pos]);
	}
}
Imports System.Globalization

Class Test
   
  Public Shared Sub Main(args() As [String])
      Dim strLow As [String] = "abc"
      Dim strCap As [String] = "ABC"
      Dim result As [String] = "equal to "
      Dim x As Integer = 0
      Dim pos As Integer = 1

' The Unicode codepoint for 'b' is greater than the codepoint for 'B'.      
      x = [String].CompareOrdinal(strLow, pos, strCap, pos, 1)
      If x < 0 Then
         result = "less than"
      End If
      If x > 0 Then
         result = "greater than"
      End If

' In U.S. English culture, 'b' is linguistically less than 'B'.
      Console.WriteLine("CompareOrdinal(""{0}"".Chars({2}), ""{1}"".Chars({2})):", strLow, strCap, pos)
      
      Console.WriteLine("   '{0}' is {1} '{2}'", strLow.Chars(pos), result, strCap.Chars(pos))
      
      x = [String].Compare(strLow, pos, strCap, pos, 1, False, New CultureInfo("en-US"))
      If x < 0 Then
         result = "less than"
      ElseIf x > 0 Then
         result = "greater than"
      End If
      Console.WriteLine("Compare(""{0}"".Chars({2}), ""{1}"".Chars({2})):", strLow, strCap, pos)
      Console.WriteLine("   '{0}' is {1} '{2}'", strLow.Chars(pos), result, strCap.Chars(pos))
   End Sub 'Main
End Class 'Test

Hinweise

Die indexAParameter indexB, undlength dürfen nicht negativ sein.The indexA, indexB, and length parameters must be nonnegative.

Die Anzahl der verglichenen Zeichen ist kleiner als die Länge strA von indexALess, die Länge strB von indexBless und length.The number of characters compared is the lesser of the length of strA less indexA, the length of strB less indexB, and length.

Diese Methode führt einen Vergleich unter Berücksichtigung von ordinalsortierungs Regeln durch.This method performs a case-sensitive comparison using ordinal sort rules. Weitere Informationen zu Wort-, Zeichen folgen-und ordinalsortierungen System.Globalization.CompareOptionsfinden Sie unter.For more information about word, string, and ordinal sorts, see System.Globalization.CompareOptions. Um einen Vergleich ohne Beachtung der Groß-/Kleinschreibung mithilfe von ordinalsortierungs Regeln comparisonType durchzuführen, StringComparison.OrdinalIgnoreCasemüssen Sie die Compare(String, Int32, String, Int32, Int32, StringComparison) -Methode mit dem-ArgumentTo perform a case-insensitive comparison using ordinal sort rules, call the Compare(String, Int32, String, Int32, Int32, StringComparison) method with the comparisonType argument set to StringComparison.OrdinalIgnoreCase.

Da CompareOrdinal(String, String) eine statische Methode ist, strA kann strB und sein null.Because CompareOrdinal(String, String) is a static method, strA and strB can be null. Wenn beide Werte sind null, gibt die Methode 0 (null) zurück, was darauf strA hinweist strB , dass und gleich sind.If both values are null, the method returns 0 (zero), which indicates that strA and strB are equal. Wenn nur einer der-Werte ist null, betrachtet die Methode den Wert ungleich NULL als größer.If only one of the values is null, the method considers the non-null value to be greater.

Siehe auch

CompareOrdinal(String, String) CompareOrdinal(String, String) CompareOrdinal(String, String) CompareOrdinal(String, String)

Vergleicht zwei String-Objekte, indem die numerischen Werte der entsprechenden Char-Objekte in den Zeichenfolgen ausgewertet werden.Compares two specified String objects by evaluating the numeric values of the corresponding Char objects in each string.

public:
 static int CompareOrdinal(System::String ^ strA, System::String ^ strB);
public static int CompareOrdinal (string strA, string strB);
static member CompareOrdinal : string * string -> int
Public Shared Function CompareOrdinal (strA As String, strB As String) As Integer

Parameter

strA
String String String String

Die erste zu vergleichende Zeichenfolge.The first string to compare.

strB
String String String String

Die zweite zu vergleichende Zeichenfolge.The second string to compare.

Gibt zurück

Eine ganze Zahl, die die lexikalische Beziehung zwischen den beiden Vergleichswerten angibt.An integer that indicates the lexical relationship between the two comparands.

WertValue BedingungCondition
Kleiner als 0 (null)Less than zero strA ist kleiner als strB.strA is less than strB.
ZeroZero strA und strB sind gleich.strA and strB are equal.
Größer als 0 (null)Greater than zero strA ist größer als strB.strA is greater than strB.

Beispiele

Das folgende Beispiel führt einen Ordinalvergleich zweier Zeichen folgen durch, die sich nur in Groß-/Kleinschreibung unterscheidenThe following example performs and ordinal comparison of two strings that only differ in case.

// Sample for String::CompareOrdinal(String, String)
using namespace System;
int main()
{
   String^ str1 = "ABCD";
   String^ str2 = "abcd";
   String^ str;
   int result;
   Console::WriteLine();
   Console::WriteLine( "Compare the numeric values of the corresponding Char objects in each string." );
   Console::WriteLine( "str1 = '{0}', str2 = '{1}'", str1, str2 );
   result = String::CompareOrdinal( str1, str2 );
   str = ((result < 0) ? "less than" : ((result > 0) ? (String^)"greater than" : "equal to"));
   Console::Write( "String '{0}' is ", str1 );
   Console::Write( "{0} ", str );
   Console::WriteLine( "String '{0}'.", str2 );
}

/*
This example produces the following results:

Compare the numeric values of the corresponding Char objects in each string.
str1 = 'ABCD', str2 = 'abcd'
String 'ABCD' is less than String 'abcd'.
*/
// Sample for String.CompareOrdinal(String, String)
using System;

class Sample {
    public static void Main() {
    String str1 = "ABCD";
    String str2 = "abcd";
    String str;
    int result;

    Console.WriteLine();
    Console.WriteLine("Compare the numeric values of the corresponding Char objects in each string.");
    Console.WriteLine("str1 = '{0}', str2 = '{1}'", str1, str2);
    result = String.CompareOrdinal(str1, str2);
    str = ((result < 0) ? "less than" : ((result > 0) ? "greater than" : "equal to"));
    Console.Write("String '{0}' is ", str1);
    Console.Write("{0} ", str);
    Console.WriteLine("String '{0}'.", str2);
    }
}
/*
This example produces the following results:

Compare the numeric values of the corresponding Char objects in each string.
str1 = 'ABCD', str2 = 'abcd'
String 'ABCD' is less than String 'abcd'.
*/
' Sample for String.CompareOrdinal(String, String)
Class Sample
   Public Shared Sub Main()
      Dim str1 As [String] = "ABCD"
      Dim str2 As [String] = "abcd"
      Dim str As [String]
      Dim result As Integer
      
      Console.WriteLine()
      Console.WriteLine("Compare the numeric values of the corresponding Char objects in each string.")
      Console.WriteLine("str1 = '{0}', str2 = '{1}'", str1, str2)
      result = [String].CompareOrdinal(str1, str2)
      str = IIf(result < 0, "less than", IIf(result > 0, "greater than", "equal to"))
      Console.Write("String '{0}' is ", str1)
      Console.Write("{0} ", str)
      Console.WriteLine("String '{0}'.", str2)
   End Sub 'Main
End Class 'Sample
'
'This example produces the following results:
'
'Compare the numeric values of the corresponding Char objects in each string.
'str1 = 'ABCD', str2 = 'abcd'
'String 'ABCD' is less than String 'abcd'.
'

Hinweise

Diese Methode führt einen Vergleich unter Berücksichtigung von ordinalsortierungs Regeln durch.This method performs a case-sensitive comparison using ordinal sort rules. Weitere Informationen zu Wort-, Zeichen folgen-und ordinalsortierungen System.Globalization.CompareOptionsfinden Sie unter.For more information about word, string, and ordinal sorts, see System.Globalization.CompareOptions. Um einen Vergleich ohne Beachtung der Groß-/Kleinschreibung mithilfe von ordinalsortierungs Regeln comparisonType durchzuführen, StringComparison.OrdinalIgnoreCasemüssen Sie die Compare(String, String, StringComparison) -Methode mit dem-ArgumentTo perform a case-insensitive comparison using ordinal sort rules, call the Compare(String, String, StringComparison) method with the comparisonType argument set to StringComparison.OrdinalIgnoreCase.

Da CompareOrdinal(String, String) eine statische Methode ist, strA kann strB und sein null.Because CompareOrdinal(String, String) is a static method, strA and strB can be null. Wenn beide Werte sind null, gibt die Methode 0 (null) zurück, was darauf strA hinweist strB , dass und gleich sind.If both values are null, the method returns 0 (zero), which indicates that strA and strB are equal. Wenn nur einer der-Werte ist null, betrachtet die Methode den Wert ungleich NULL als größer.If only one of the values is null, the method considers the non-null value to be greater.

Siehe auch

Gilt für: