Bagaimana untuk menggunakan pemprosesan rentetan dalam Go?

WBOY
Lepaskan: 2023-05-11 16:21:38
asal
650 orang telah melayarinya

Go, sebagai bahasa pengaturcaraan yang berkuasa, menyediakan banyak fungsi dan kaedah pemprosesan rentetan. Untuk kita menguasai pengetahuan ini dengan lebih baik, artikel ini akan memperkenalkan jenis rentetan dan fungsi pemprosesan rentetan asas dalam Go, termasuk penciptaan rentetan, penyambungan, pemotongan, perbandingan dan carian.

  1. Jenis rentetan

Dalam Go, jenis rentetan ditakrifkan sebagai jujukan aksara baca sahaja, taip rentetan. Nilai rentetan terdiri daripada jujukan aksara yang dilampirkan oleh sepasang petikan berganda, contohnya:

str := "Hello, world!"
Salin selepas log masuk
Salin selepas log masuk

String adalah baca sahaja dan kami tidak boleh mengubah suai aksara tertentu dalam rentetan. Anda boleh menukar nilai rentetan dengan menugaskannya semula, seperti:

str := "Hello, world!"
str = "Hello, Golang!"
Salin selepas log masuk
  1. Penciptaan rentetan

Terdapat banyak cara untuk mencipta rentetan, seperti berikut. sebahagian daripadanya:

  • Pengisytiharan terus dan tugasan

Contohnya:

str := "Hello, world!"
Salin selepas log masuk
Salin selepas log masuk

Kaedah ini adalah kaedah yang paling mudah dan paling biasa digunakan. Perlu diingat bahawa dalam Go, aksara khas dalam rentetan petikan dua kali perlu diwakili oleh aksara melarikan diri, contohnya:

str := "This is a "quoted" string."
Salin selepas log masuk
  • Gunakan tatasusunan aksara untuk mencipta

Mencipta rentetan melalui tatasusunan aksara juga merupakan cara yang boleh dilaksanakan, contohnya:

str := []byte{'H', 'e', 'l', 'l', 'o', ',', ' ', 'w', 'o', 'r', 'l', 'd', '!'}
str_1 := string(str)
Salin selepas log masuk

Kod di atas mencipta tatasusunan aksara jenis bait dan menukarkannya kepada jenis rentetan. Perlu diingat bahawa dalam Go, rentetan dan tatasusunan aksara adalah dua jenis yang berbeza.

  • Buat menggunakan fmt.Sprintf

Kita boleh menggunakan fungsi fmt.Sprintf untuk mencipta rentetan, serupa dengan fungsi sprintf dalam bahasa C. Contohnya:

str := fmt.Sprintf("The value of x is %d", x)
Salin selepas log masuk
  1. Penggabungan rentetan

Penggabungan rentetan boleh menggunakan pengendali "+", contohnya:

str1 := "Hello"
str2 := ", world!"
result := str1 + str2
Salin selepas log masuk

atau gunakan fmt. Fungsi Sprintf, sebagai contoh:

str1 := "Hello"
str2 := ", world!"
result := fmt.Sprintf("%s%s", str1, str2)
Salin selepas log masuk

Perlu diingatkan bahawa gabungan rentetan akan menghasilkan rentetan baharu Apabila terdapat banyak operasi, sejumlah besar rentetan sementara akan dijana, yang mungkin menjejaskan prestasi rentetan program.

  1. Pemotongan rentetan

Pemotongan rentetan boleh menggunakan fungsi Split dalam pakej rentetan, contohnya:

str := "apple,orange,peach"
slice := strings.Split(str, ",")
Salin selepas log masuk

Kod di atas dipisahkan dengan simbol koma untuk memotong str tali menjadi kepingan.

  1. Perbandingan rentetan

Perbandingan rentetan boleh menggunakan operator "==" atau fungsi Equal dalam pakej rentetan, contohnya:

rreee

Kod di atas membandingkan kesamaan dua rentetan menggunakan operator "==" dan fungsi EqualFold dalam pakej rentetan.

Perlu diambil perhatian bahawa dalam Go, perbandingan rentetan adalah sensitif huruf besar-besaran Jika anda perlu tidak peka huruf besar-besaran, anda boleh menggunakan fungsi EqualFold dalam pakej rentetan.

  1. Cari rentetan

Go menyediakan berbilang fungsi untuk mencari rentetan, termasuk:

  • rentetan.Mengandungi: Penghakiman Sama ada rentetan mengandungi rentetan lain.
str1 := "Hello"
str2 := "world"
equal := (str1 == str2)
equal_1 := strings.EqualFold(str1, str2)
Salin selepas log masuk
  • rentetan.Indeks: Cari kejadian pertama rentetan dalam rentetan lain.
str := "Hello, world!"
contains := strings.Contains(str, "world") // 返回true
Salin selepas log masuk
  • rentetan.LastIndex: Cari kejadian terakhir rentetan dalam rentetan lain.
str := "Hello, world!"
index := strings.Index(str, "world") // 返回7
Salin selepas log masuk
  • rentetan.HasPrefix: Tentukan sama ada rentetan bermula dengan rentetan lain.
str := "Hello, world!"
index := strings.LastIndex(str, "o") // 返回8
Salin selepas log masuk
  • rentetan.HasSuffix: Tentukan sama ada rentetan berakhir dengan rentetan lain.
str := "Hello, world!"
hasPrefix := strings.HasPrefix(str, "Hello") // 返回true
Salin selepas log masuk

Ringkasan

Artikel ini memperkenalkan fungsi dan kaedah pemprosesan rentetan asas dalam pembangunan sebenar, kami akan menggunakan lebih banyak operasi rentetan, seperti penggantian, penukaran Tulis saiz, output format dan lebih. Pembaca yang memerlukan pemahaman yang mendalam boleh merujuk kepada dokumentasi rasmi dan kod contoh untuk pembelajaran lanjut.

Atas ialah kandungan terperinci Bagaimana untuk menggunakan pemprosesan rentetan dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!