Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Memisahkan Rentetan dengan Pembatas Aksara Berbilang dalam C#?
Memisahkan Rentetan dengan Pembatas Berbilang Aksara
Dalam C#, membelah rentetan pada pembatas berbilang aksara mungkin mencabar. Kaedah rentetan.Split tidak menyokong fungsi ini secara langsung. Walau bagaimanapun, terdapat beberapa pendekatan untuk mencapai hasil yang diinginkan.
Menggunakan Kelas Ekspresi Biasa
Satu pendekatan ialah menggunakan kelas Regex, yang menyediakan keupayaan padanan corak yang berkuasa . Kod berikut menunjukkan cara membahagi rentetan menggunakan ungkapan biasa:
string input = "abc][rfd][5][,][."; string[] parts = Regex.Split(input, @"\]\[");
Dalam kes ini, ungkapan biasa @"][" sepadan dengan pembatas "][". Kaedah Regex.Split kemudian membahagikan rentetan kepada tatasusunan subrentetan berdasarkan corak yang ditentukan.
Menggunakan Kaedah Rentetan.Split dengan Tatasusunan Pembatas
Sebagai alternatif , anda boleh mengubah suai kaedah String.Split untuk menerima tatasusunan pembatas dan bukannya satu aksara. Teknik ini membolehkan anda menentukan berbilang pembatas aksara.
string input = "abc][rfd][5][,][."; string[] parts = input.Split(new string[] { "][" }, StringSplitOptions.None);
Di sini, kaedah String.Split dipanggil dengan tatasusunan yang mengandungi pembatas "][". Parameter StringSplitOptions.None menyatakan bahawa rentetan harus dipisahkan tepat pada pembatas yang disediakan.
Kebaikan dan Kelemahan
Kedua-dua pendekatan mempunyai kelebihan dan kekurangannya. Ungkapan biasa adalah serba boleh dan berkuasa, tetapi ia boleh menjadi rumit untuk ditulis dan difahami. Menggunakan tatasusunan pembatas adalah lebih mudah, tetapi ia mungkin tidak boleh dilaksanakan untuk semua senario, terutamanya jika pembatas adalah berubah-ubah.
Akhirnya, pendekatan terbaik untuk membelah rentetan dengan berbilang pembatas aksara bergantung pada keperluan khusus bagi permohonan.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memisahkan Rentetan dengan Pembatas Aksara Berbilang dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!