Heim > Backend-Entwicklung > C++ > Wie vergleiche ich Strings in C# effizient und ohne Berücksichtigung der Groß-/Kleinschreibung?

Wie vergleiche ich Strings in C# effizient und ohne Berücksichtigung der Groß-/Kleinschreibung?

Patricia Arquette
Freigeben: 2025-01-05 17:09:40
Original
175 Leute haben es durchsucht

How to Efficiently Compare Strings in C# with Case Insensitivity?

String-Vergleich mit Groß-/Kleinschreibung in C#

Beim Vergleich zweier Strings in C# ist der Umgang mit Groß-/Kleinschreibung eine häufige Anforderung. Es stehen mehrere Optionen zur Verfügung, aber jede bringt ihre eigenen Leistungsaspekte mit sich. Lassen Sie uns zwei beliebte Methoden untersuchen und eine effizientere Alternative bereitstellen.

Methode 1: String.Equals mit StringComparison.InvariantCultureIgnoreCase

Diese Methode ist unkompliziert, aber möglicherweise langsamer. Es vergleicht Zeichenfolgen anhand der InvariantCultureIgnoreCase-Kriterien, wodurch die Groß-/Kleinschreibung nicht beachtet wird, jedoch der Mehraufwand an kulturellen Überlegungen entsteht.

string val = "AStringValue";

if (val.Equals("astringvalue", StringComparison.InvariantCultureIgnoreCase))
Nach dem Login kopieren

Methode 2: String.ToLowerCase mit ==

Diese Methode scheint zwar schneller zu sein, da sie die kulturelle Verarbeitung eliminiert, hat aber auch einen Nachteil. Durch das Konvertieren einer Zeichenfolge in Kleinbuchstaben wird eine neue Zeichenfolgeninstanz erstellt, die zusätzlichen Speicher verbraucht und möglicherweise die Leistung bei der Verarbeitung großer Zeichenfolgen beeinträchtigt.

if (val.ToLowerCase() == "astringvalue")
Nach dem Login kopieren

Eine effizientere Alternative: String.Equals mit StringComparison.OrdinalIgnoreCase

Die optimale Lösung ist die Verwendung von StringComparison.OrdinalIgnoreCase flag:

string.Equals(val, "astringvalue", StringComparison.OrdinalIgnoreCase)
Nach dem Login kopieren

Ordinale Vergleiche umgehen kulturelle Überlegungen und sind deutlich schneller. Sie gehen jedoch davon aus, dass beide Zeichenfolgen dieselbe Zeichenkodierung verwenden, und können andernfalls zu unerwarteten Ergebnissen führen.

Wenn Sie dieselbe Zeichenfolge häufig mit anderen vergleichen, kann eine vorherige Konvertierung in Kleinbuchstaben die Effizienz verbessern. Aber denken Sie daran: Messen und testen Sie Ihren Code, bevor Sie Optimierungen vornehmen, um greifbare Vorteile sicherzustellen.

Das obige ist der detaillierte Inhalt vonWie vergleiche ich Strings in C# effizient und ohne Berücksichtigung der Groß-/Kleinschreibung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage