Bagaimana untuk membuang ruang putih dalam rentetan dalam C#

Bagaimana Untuk Membuang Ruang Putih Dalam Rentetan Dalam C



Dalam C#, aksara ruang putih diwakili oleh ruang, tab, baris baharu, carriage return dan aksara lain yang serupa. Mengalih keluar ruang putih daripada rentetan ialah tugas biasa dalam manipulasi rentetan, terutamanya apabila berurusan dengan input pengguna, pemprosesan fail dan penghuraian data. Artikel ini menyelidiki pelbagai kaedah untuk mengalih keluar ruang putih daripada rentetan dalam C#.

Apakah ruang putih?

Ruang putih ialah aksara yang mewakili ruang kosong atau kosong dalam rentetan teks. Ia biasanya digunakan untuk memisahkan perkataan dan elemen lain teks dan untuk meningkatkan kebolehbacaan dan penampilan visual teks.







Dalam pengaturcaraan, ruang putih merangkumi aksara seperti ruang, tab, baris baharu dan pemulangan pengangkutan. Dalam kebanyakan bahasa pengaturcaraan, ruang putih diabaikan atau dianggap sebagai tidak penting semasa memproses atau mentafsir kod, tetapi ia boleh menjejaskan reka letak, pemformatan dan sintaks kod.



Cara Mengalih Keluar Ruang Putih dalam Rentetan

Mengalih keluar atau memanipulasi ruang putih ialah tugas biasa dalam pemprosesan rentetan dan manipulasi teks. Menormalkan atau menyeragamkan input teks selalunya melibatkan keperluan untuk mengalih keluar atau menggantikan ruang putih. Untuk mengalih keluar aksara yang tidak diperlukan yang boleh menjejaskan kefungsian kod atau ketepatan data, atau untuk meningkatkan kecekapan dan kebolehbacaan kod, berikut ialah beberapa cara untuk melakukannya:



1: Menggunakan Kaedah String.Replace().

Untuk mengalih keluar ruang putih daripada rentetan dengan cara yang mudah, kaedah String.Replace() boleh digunakan. Dalam senario ini, kita boleh menetapkan aksara ruang ” ” sebagai nilai lama dan rentetan kosong “” sebagai nilai baharu. Dengan berbuat demikian, semua ruang dalam rentetan akan dialih keluar dengan berkesan.





menggunakan Sistem;

whitepace kelas
{
lompang statik Utama ( tali [ ] args )
{
rentetan asalString = 'Hello, Sam!' ;
string trimmedString = originalString.Replace ( ' ' , '' ) ;
Console.WriteLine ( trimmedString ) ;
}
}


Program ini termasuk pernyataan penggunaan yang mengimport ruang nama Sistem, yang diperlukan untuk menggunakan kelas Konsol untuk input dan output konsol.

Dalam kaedah Utama, kami memulakan pembolehubah rentetan bernama originalString dengan nilai 'Hello, Sam!'.



Seterusnya, kami mengisytiharkan pembolehubah rentetan lain bernama trimmedString dan memberikannya hasil daripada menggunakan kaedah Replace() pada originalString. The Gantikan() kaedah dipanggil dengan dua argumen: argumen pertama mewakili subrentetan lama yang ingin kami gantikan, yang dalam kes ini ialah aksara ruang tunggal ' ', dan argumen kedua menandakan subrentetan baru yang ingin kami gantikan, iaitu rentetan kosong “”.

2: Menggunakan Kaedah String.Join().

Satu lagi cara untuk mengalih keluar ruang putih daripada rentetan ialah membahagikan rentetan itu kepada tatasusunan subrentetan menggunakan kaedah String.Split() dan kemudian menyambung semula subrentetan itu bersama-sama menggunakan String.Join() kaedah. Untuk menghapuskan sebarang subrentetan kosong yang mungkin timbul daripada ruang putih berturut-turut, kami boleh menggunakan pilihan StringSplitOptions.RemoveEmptyEntries.

menggunakan Sistem;

whitepace kelas
{
lompang statik Utama ( tali [ ] args )
{
rentetan asalString = 'Hello, Sam!' ;
tali [ ] subrentetan = originalString.Split ( watak baru [ ] { '' } , StringSplitOptions.RemoveEmptyEntries ) ;
string trimmedString = String.Join ( '' , subrentetan ) ;
Console.WriteLine ( trimmedString ) ;
}
}


Dalam kod ini, terdapat pengisytiharan pembolehubah rentetan bernama 'originalString' dan ia dimulakan dengan nilai 'Hello, Sam!' dan kemudian mengalami pemisahan kepada tatasusunan subrentetan menggunakan aksara ruang sebagai pembatas. Pilihan RemoveEmptyEntries digunakan untuk mengecualikan sebarang subrentetan kosong daripada tatasusunan yang terhasil.

Selepas itu, kod tersebut menggunakan String.Join() kaedah untuk menggabungkan subrentetan bukan kosong menjadi rentetan bersatu, menggunakan rentetan kosong sebagai pemisah.

Akhir sekali, kod tersebut menggunakan Console.WriteLine untuk memaparkan rentetan yang dipangkas pada tetingkap konsol. Selepas melaksanakan kod ini, anda boleh mengharapkan untuk melihat output 'Hello, Sam!' sedang dicetak pada konsol.

3: Menggunakan Ungkapan Biasa

Ungkapan biasa menyediakan cara yang berkesan untuk memadankan dan menggantikan corak dalam rentetan. Dengan menggunakan Regex.Replace() kaedah, kita boleh menghapuskan semua aksara ruang kosong secara berkesan daripada rentetan.

menggunakan Sistem;
menggunakan System.Text.RegularExpressions;

ruang kosong kelas
{
lompang statik Utama ( tali [ ] args )
{
rentetan asalString = 'Hello, Sam!' ;
rentetan trimmedString = Regex.Replace ( rentetan asal, @ '\s+' , '' ) ;
Console.WriteLine ( trimmedString ) ; '
}
}


Dalam kod ini, pembolehubah rentetan bernama 'originalString' diisytiharkan dan dimulakan dengan nilai 'Hello, Sam!'. Kod itu kemudiannya menggunakan kaedah Regex.Replace() untuk menggantikan satu atau lebih aksara ruang putih (diwakili oleh ungkapan biasa \s+) dengan rentetan kosong.

Akhir sekali, kod tersebut menggunakan Console.WriteLine() untuk mengeluarkan rentetan yang dipangkas ke tetingkap konsol dan Apabila anda melaksanakan program ini, anda akan melihat output 'Hello, Sam!' dicetak ke konsol.

Dalam contoh khusus ini, corak ungkapan biasa @”\s+” digunakan untuk memadankan satu atau lebih aksara ruang putih (termasuk ruang, tab dan baris baharu) dan seterusnya menggantikannya dengan rentetan kosong.

4: Menggunakan LINQ

Kami juga boleh mengalih keluar ruang putih daripada rentetan menggunakan LINQ. Kita boleh menggunakan kaedah Where() untuk menapis aksara ruang putih dan kemudian bergabung dengan aksara yang tinggal bersama-sama menggunakan String.Concat() kaedah.

menggunakan Sistem;
menggunakan System.Linq;

ruang kosong kelas
{
lompang statik Utama ( tali [ ] args )
{
rentetan asalString = 'Hello, Sam!' ;
rentetan dipangkasString = rentetan baharu ( originalString.Di mana ( c = > ! char.IsWhiteSpace ( c ) ) .ToArray ( ) ) ;
Console.WriteLine ( trimmedString ) ;
}
}


Dalam coretan kod ini, pembolehubah rentetan yang dipanggil 'originalString' diisytiharkan dan dimulakan dengan nilai ' Hello, Sam! “. Ia kemudian mencipta pembolehubah rentetan baharu bernama trimmedString menggunakan ungkapan LINQ yang menapis sebarang aksara ruang putih daripada rentetan asal. Kaedah sambungan Where() digunakan untuk menapis aksara dan aksara yang terhasil ditukar kepada tatasusunan dan dihantar kepada pembina rentetan baharu untuk mencipta rentetan baharu.

Akhir sekali, kod tersebut menggunakan Console.WriteLine() untuk mengeluarkan rentetan yang dipangkas ke tetingkap konsol. Setelah melaksanakan kod ini, anda boleh mengharapkan untuk melihat output 'Hello, Sam!' dipaparkan pada konsol.

Kesimpulan

Dalam C#, terdapat pelbagai kaedah untuk mengalih keluar ruang putih daripada rentetan dan kaedah tersebut ialah kaedah String.Replace(), String.Join(), menggunakan ungkapan biasa dan menggunakan LINQ. Adalah penting untuk memilih kaedah yang cekap, teguh dan mudah difahami, membolehkan penyelenggaraan dan kebolehbacaan yang mudah.