Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Mengeluarkan Aksara Tertentu dengan Cekap daripada Rentetan C#?

Bagaimanakah Saya Boleh Mengeluarkan Aksara Tertentu dengan Cekap daripada Rentetan C#?

Mary-Kate Olsen
Mary-Kate Olsenasal
2025-01-14 14:32:46680semak imbas

How Can I Efficiently Remove Specific Characters from a C# String?

Kaedah penyingkiran aksara rentetan C#

Dalam C#, manipulasi rentetan ialah tugas biasa yang biasanya melibatkan mengalih keluar aksara tertentu. Ini mungkin disebabkan oleh pelbagai sebab seperti pembersihan data atau pemformatan.

Soalan

Pertimbangkan rentetan: "Nama saya @is ,Wan.;'; Wan". Kita perlu mengalih keluar aksara '@', ',', '.', ';' dan ''' untuk mendapatkan "Nama saya Wan Wan."

Penyelesaian

Dalam C#, terdapat beberapa cara untuk mengalih keluar aksara daripada rentetan. Satu cara ialah menggunakan kaedah Ganti dan gunakan rentetan kosong sebagai pengganti:

<code class="language-csharp">var str = "My name @is ,Wan.;'; Wan";
var charsToRemove = new string[] { "@", ",", ".", ";", "'" };
foreach (var c in charsToRemove)
{
    str = str.Replace(c, string.Empty);
}</code>

Kaedah ini berulang ke atas aksara yang akan dialih keluar dan menggantikan setiap kejadian dengan rentetan kosong, dengan berkesan mengeluarkannya daripada rentetan.

Kaedah lain

Alternatifnya ialah menggunakan LINQ untuk menapis aksara bukan huruf dan ruang:

<code class="language-csharp">var str = "My name @is ,Wan.;'; Wan";
str = new string((from c in str
                  where char.IsWhiteSpace(c) || char.IsLetterOrDigit(c)
                  select c
       ).ToArray());</code>

Kaedah ini mencipta rentetan baharu yang mengandungi hanya aksara ruang atau huruf dan nombor, dengan berkesan mengalih keluar sebarang aksara lain.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengeluarkan Aksara Tertentu dengan Cekap daripada Rentetan C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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