golang buang aksara

王林
王林asal
2023-05-22 15:47:071665semak imbas

Di Golang, kita selalunya perlu memproses rentetan. Kadangkala, kita mungkin perlu mengalih keluar aksara tertentu dalam rentetan, seperti ruang, baris baharu, dsb. Artikel ini akan memperkenalkan kaedah yang berbeza untuk mengalih keluar aksara daripada rentetan Golang.

Kaedah 1: Gunakan rentetan.Replace()

strings.Replace() ialah fungsi dalam bahasa Go yang digunakan untuk menggantikan segmen aksara atau rentetan tertentu dalam rentetan. Kita boleh menggunakannya untuk menggantikan aksara yang ingin kita alih keluar dengan ruang, supaya kesan mengalih keluar aksara dapat dicapai.

Sebagai contoh, jika kita ingin mengalih keluar semua ruang dalam rentetan, kita boleh menggunakan kod berikut:

str := "Golang is a         programming language."
newStr := strings.Replace(str, " ", "", -1)
fmt.Println(newStr)

Outputnya ialah:

Golangisaprogramminglanguage.

Dalam contoh ini, kami akan mengeluarkan aksara (ruang) digantikan dengan rentetan kosong, -1 bermakna semua ruang akan diganti. Kaedah ini mengalih keluar semua aksara yang sepadan dengan kriteria, tetapi tidak mengendalikan rentetan kompleks dengan baik.

Kaedah 2: Gunakan ungkapan biasa

Kita boleh menggunakan ungkapan biasa untuk mengalih keluar aksara tertentu dalam rentetan, seperti ruang, tab, baris baharu, dsb.

Untuk menggunakan ungkapan biasa, kita perlu menggunakan pakej regexp dalam bahasa Go. Menggunakan pakej ini kita boleh menulis corak untuk memadankan aksara tertentu dan kemudian mengalih keluarnya.

Sebagai contoh, jika kita ingin mengalih keluar semua ruang dan tab daripada rentetan, kita boleh menggunakan kod berikut:

str := "Golang is a     programming language."
reg, _ := regexp.Compile("[\s]+")
newStr := reg.ReplaceAllString(str, "")
fmt.Println(newStr)

Outputnya ialah:

Golangisaprogramminglanguage.

Dalam contoh ini , kami mencipta objek ungkapan biasa baharu yang boleh memadankan satu atau lebih ruang atau tab berturut-turut. Kemudian gunakan kaedah ReplaceAllString() untuk menggantikannya dengan rentetan kosong.

Kaedah 3: Gunakan strings.Trim()

Jika kita hanya mahu mengalih keluar aksara tertentu pada permulaan dan akhir rentetan, kita boleh menggunakan fungsi strings.Trim().

Sebagai contoh, kami ingin mengalih keluar aksara "/" pada permulaan dan penghujung rentetan berikut:

url := "/home/user/profile/"
newUrl := strings.Trim(url, "/")
fmt.Println(newUrl)

Hasil output ialah:

home/user/profile

Dalam contoh ini , kami menggunakan fungsi Trim() mengalih keluar aksara "/" pada permulaan dan penghujung rentetan.

Kaedah 4: Gunakan bait.Penimbal

Dalam sesetengah kes, kita mungkin perlu memadamkan berbilang aksara dalam rentetan. Dalam kes ini kita boleh menggunakan bytes.Buffer untuk membina rentetan baharu. Menggunakan bytes.Buffer kita boleh menambah atau mengalih keluar aksara dengan mudah daripada rentetan.

Sebagai contoh, jika kita ingin mengalih keluar semua aksara vokal dalam rentetan, kita boleh menggunakan kod berikut:

str := "Golang is a programming language."
var buffer bytes.Buffer
for _, char := range str {
    switch char {
    case 'a', 'e', 'i', 'o', 'u', 'A', 'E', 'I', 'O', 'U':
        //skip the vowel
    default:
        buffer.WriteRune(char)
    }
}
newStr := buffer.String()
fmt.Println(newStr)

Hasil keluarannya ialah:

Glng s  prgrmmng lngg.

Dalam contoh ini , kita gelung Setiap aksara dalam rentetan dilalui, dan aksara bukan vokal ditambah pada bait. Penampan, dan akhirnya kaedah penampan.String() digunakan untuk mendapatkan rentetan akhir.

Ringkasan

Melalui artikel ini, kami mempelajari tentang empat kaedah berbeza untuk mengalih keluar aksara dalam Golang. Rentetan ialah bahagian penting dalam pengaturcaraan Golang, dan menguasai kemahiran ini akan membantu kami mengendalikan rentetan dengan lebih baik. Kaedah yang anda pilih bergantung pada keperluan anda, tetapi menggunakan ungkapan biasa atau bait. Penampan boleh mengendalikan rentetan yang lebih kompleks.

Atas ialah kandungan terperinci golang buang aksara. 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
Artikel sebelumnya:golang tak boleh startArtikel seterusnya:golang tak boleh start