Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Mengeluarkan Aksara Bukan ASCII daripada Rentetan dalam C#?
Mengalih keluar Aksara Bukan ASCII dengan Cekap daripada Rentetan C#
Pemprosesan dan pengesahan data kerap memerlukan pengalihan keluar aksara bukan ASCII daripada rentetan. Artikel ini menunjukkan kaedah C# ringkas menggunakan ungkapan biasa untuk menyelesaikan tugas ini.
Penyelesaian Ungkapan Biasa
Coretan kod berikut menggunakan ungkapan biasa untuk mengalih keluar semua aksara bukan ASCII:
<code class="language-csharp">string s = "søme string"; s = Regex.Replace(s, @"[^\u0000-\u007F]+", string.Empty);</code>
Regex.Replace
menggantikan semua kemunculan corak dengan rentetan kosong, dengan berkesan memadamkan aksara bukan ASCII. Jom analisa corak:
^
: Pengendali penolakan, menyongsangkan perlawanan.u####-u####
: Menentukan julat titik kod Unikod. u0000-u007F
mentakrifkan julat ASCII.
: Memadankan satu atau lebih kejadian kelas aksara sebelumnya.Corak ini menyasarkan dan mengalih keluar semua aksara dengan tepat di luar julat ASCII.
Diterangkan Regex
Ungkapan biasa boleh dipecahkan lagi:
[u0000-u007F]
: Memadankan satu atau lebih aksara ASCII.[^...]
: Tanda kurung segi empat dengan tanda karet utama (^
) mencipta kelas aksara yang dinafikan, memilih aksara di luar julat yang ditentukan.string.Empty
: Rentetan gantian; dalam kes ini, rentetan kosong, mengalih keluar aksara yang dipadankan.Ungkapan biasa ini menyediakan cara yang bersih dan cekap untuk menapis rentetan, hanya meninggalkan aksara ASCII.
Atas ialah kandungan terperinci Bagaimana untuk Mengeluarkan Aksara Bukan ASCII daripada Rentetan dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!