Rumah > pembangunan bahagian belakang > Golang > Bagaimanakah Saya Boleh Mengulang Pembolehubah dalam fmt.Sprintf Go Menggunakan Indeks Argumen?

Bagaimanakah Saya Boleh Mengulang Pembolehubah dalam fmt.Sprintf Go Menggunakan Indeks Argumen?

Patricia Arquette
Lepaskan: 2024-12-30 10:59:18
asal
914 orang telah melayarinya

How Can I Repeat a Variable in Go's fmt.Sprintf Using Argument Indexes?

Mereplikasi Pembolehubah dalam Sprintf Menggunakan Indeks Argumen Eksplisit

Dalam penggunaan fmt.Sprintf() konvensional, pembolehubah digantikan secara berurutan ke dalam rentetan yang diformatkan. Walau bagaimanapun, adalah boleh dilakukan untuk mereplikasi pembolehubah tunggal di seluruh rentetan.

Penyelesaian

Menggunakan indeks argumen eksplisit, rentetan format boleh diubah suai untuk merujuk berbilang argumen yang sama times:

val := "foo"
s := fmt.Sprintf("%[1]v in %[1]v is %[1]v", val)
Salin selepas log masuk

Notasi %[n] sebelum kata kerja pemformatan menentukan indeks hujah yang akan digunakan. Dalam kes ini, %[1] menunjukkan bahawa argumen pertama (val) harus digunakan untuk semua kejadian pemegang tempat.

Output

Melaksanakan Sprintf yang diubah suai:

fmt.Println(s)
Salin selepas log masuk

Menghasilkan:

foo in foo is foo
Salin selepas log masuk

Secara berkesan, setiap tempat letak pembolehubah dalam rentetan digantikan dengan nilai val, menghasilkan replikasi yang diingini.

Borang Ringkas

Untuk senario khusus di mana hujah pertama harus digunakan secara konsisten, indeks %[1] boleh ditinggalkan:

fmt.Sprintf("%v in %[1]v is %[1]v", "foo")
Salin selepas log masuk

Sintaks yang disingkatkan ini memudahkan rentetan pemformatan sambil masih mencapai replikasi yang sama kefungsian.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengulang Pembolehubah dalam fmt.Sprintf Go Menggunakan Indeks Argumen?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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