Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Membandingkan Strings-Insensitively Case-Insensitively dalam C#?

Bagaimana untuk Membandingkan Strings-Insensitively Case-Insensitively dalam C#?

DDD
Lepaskan: 2025-01-03 03:19:40
asal
752 orang telah melayarinya

How to Efficiently Compare Strings Case-Insensitively in C#?

Membandingkan Dua Rentetan Tanpa Peka Huruf dalam C#

Apabila membandingkan rentetan dalam C#, perbandingan tidak peka huruf besar-besaran selalunya diperlukan. Mari kita teroka pendekatan berbeza untuk高效进行此操作:

1. Equals with StringComparison.InvariantCultureIgnoreCase (Culture-Aware)

if (val.Equals("astringvalue", StringComparison.InvariantCultureIgnoreCase))
Salin selepas log masuk

Pendekatan ini mengambil kira aspek budaya, memastikan perbandingan tidak peka huruf besar dan kecil merentas budaya yang berbeza. Walau bagaimanapun, ia biasanya lebih perlahan daripada perbandingan yang tidak sensitif budaya.

2. ToLower dengan Perbandingan Langsung (Tidak Sensitif Budaya)

if (val.ToLowerCase() == "astringvalue")
Salin selepas log masuk

Pendekatan ini secara eksplisit menukar rentetan kepada huruf kecil dan kemudian melakukan perbandingan langsung. Ia lebih pantas daripada pendekatan sedar budaya tetapi mungkin menghasilkan hasil yang tidak dijangka jika rentetan mengandungi aksara yang dipengaruhi oleh peraturan sarung khusus budaya.

3. Sama dengan StringComparison.OrdinalIgnoreCase (Ordinal Comparison)

if (string.Equals(val, "astringvalue", StringComparison.OrdinalIgnoreCase))
Salin selepas log masuk

Pendekatan ini melakukan perbandingan ordinal (tidak sensitif budaya) yang tidak sensitif huruf. Ia jauh lebih pantas daripada perbandingan sedar budaya, tetapi ia mengabaikan sebarang konvensyen sarung budaya.

Pengesyoran

Untuk kecekapan, gunakan StringComparison.OrdinalIgnoreCase, kerana ia menyediakan perbandingan tidak sensitif huruf besar dan boleh dipercayai. Walau bagaimanapun, jika anda memerlukan perbandingan yang menyedari budaya untuk senario tertentu, kaedah Equals dengan StringComparison.InvariantCultureIgnoreCase mungkin lebih sesuai.

Atas ialah kandungan terperinci Bagaimana untuk Membandingkan Strings-Insensitively Case-Insensitively dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan