Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Varsayılan olarak, String.Compare yöntemi kültüre duyarlı ve büyük/küçük harfe duyarlı karşılaştırmalar gerçekleştirir. Bu yöntem, kullanılacak kültürü belirtmenize olanak tanıyan bir culture parametre sağlayan çeşitli aşırı yüklemeler ve kullanılacak karşılaştırma kurallarını belirtmenize olanak tanıyan bir comparisonType parametre de içerir. Varsayılan aşırı yükleme yerine bu yöntemleri çağırmak, belirli bir yöntem çağrısında kullanılan kurallarla ilgili belirsizliği ortadan kaldırır ve belirli bir karşılaştırmanın kültüre duyarlı mı yoksa kültüre duyarsız mı olduğunu netleştirir.
Uyarı
Yöntemin String.CompareTo her iki aşırı yüklemesi de kültüre duyarlı ve büyük/küçük harfe duyarlı karşılaştırmalar gerçekleştirir; kültüre duyarsız karşılaştırmalar yapmak için bu yöntemi kullanamazsınız. Kod netliği için bunun yerine yöntemini kullanmanızı String.Compare öneririz.
Kültüre duyarlı işlemler için parametre olarak comparisonType veya StringComparison.CurrentCultureIgnoreCase numaralandırma değerini belirtinStringComparison.CurrentCulture. Geçerli kültür dışında belirlenmiş bir kültürü kullanarak kültüre duyarlı bir karşılaştırma yapmak istiyorsanız, parametre olarak culture bu kültürü temsil eden nesneyi belirtinCultureInfo.
yöntemi tarafından String.Compare desteklenen kültüre duyarsız dize karşılaştırmaları, dilsel (sabit kültürün sıralama kurallarına göre) veya dilsel olmayandır (dizedeki karakterlerin sıralı değerine göre). Kültüre duyarsız dize karşılaştırmalarının çoğu dilsel değildir. Bu karşılaştırmalar için parametre olarak comparisonType veya StringComparison.OrdinalIgnoreCase numaralandırma değerini belirtinStringComparison.Ordinal. Örneğin, bir güvenlik kararı (kullanıcı adı veya parola karşılaştırması gibi) dize karşılaştırmasının sonucunu temel alırsa, sonucun belirli bir kültür veya dilin kurallarından etkilenmediğinden emin olmak için işlem kültüre duyarsız ve dilsel olmamalıdır.
Birden çok kültürden gelen dilsel olarak ilgili dizeleri tutarlı bir şekilde işlemek istiyorsanız kültüre duyarsız dil dizesi karşılaştırması kullanın. Örneğin, uygulamanız bir liste kutusunda birden çok karakter kümesi kullanan sözcükleri görüntülüyorsa, sözcükleri geçerli kültürden bağımsız olarak aynı sırada görüntülemek isteyebilirsiniz. Kültüre duyarsız dil karşılaştırmaları için .NET, İngilizcenin dilsel kurallarını temel alan sabit bir kültür tanımlar. Kültüre duyarsız dil karşılaştırması yapmak için parametresi olarak veya StringComparison.InvariantCultureIgnoreCase belirtin StringComparison.InvariantCulturecomparisonType.
Aşağıdaki örnek iki kültüre duyarsız, dilsel olmayan dize karşılaştırması gerçekleştirir. Birincisi büyük/küçük harfe duyarlıdır, ancak ikincisi değildir.
using System;
public class CompareSample
{
public static void Main()
{
string string1 = "file";
string string2 = "FILE";
int compareResult = 0;
compareResult = String.Compare(string1, string2,
StringComparison.Ordinal);
Console.WriteLine($"{StringComparison.Ordinal} comparison of '{string1}' and '{string2}': {compareResult}");
compareResult = String.Compare(string1, string2,
StringComparison.OrdinalIgnoreCase);
Console.WriteLine($"{StringComparison.OrdinalIgnoreCase} comparison of '{string1}' and '{string2}': {compareResult}");
}
}
// The example displays the following output:
// Ordinal comparison of 'file' and 'FILE': 32
// OrdinalIgnoreCase comparison of 'file' and 'FILE': 0
Public Class CompareSample
Public Shared Sub Main()
Dim string1 As String = "file"
Dim string2 As String = "FILE"
Dim compareResult As Integer
compareResult = String.Compare(string1, string2, _
StringComparison.Ordinal)
Console.WriteLine("{0} comparison of '{1}' and '{2}': {3}",
StringComparison.Ordinal, string1, string2,
compareResult)
compareResult = String.Compare(string1, string2,
StringComparison.OrdinalIgnoreCase)
Console.WriteLine("{0} comparison of '{1}' and '{2}': {3}",
StringComparison.OrdinalIgnoreCase, string1, string2,
compareResult)
End Sub
End Class
' The example displays the following output:
' Ordinal comparison of 'file' and 'FILE': 32
' OrdinalIgnoreCase comparison of 'file' and 'FILE': 0
Sıralama Ağırlığı Tablolarını, Windows işletim sistemleri için sıralama ve karşılaştırma işlemlerinde kullanılan karakter ağırlıkları hakkında bilgi içeren bir dizi metin dosyasını ve Linux ve macOS için sıralama ağırlığı tablosu olan Varsayılan Unicode Harmanlama Öğesi Tablosu'nu indirebilirsiniz.