Rumah > pembangunan bahagian belakang > Golang > Bagaimanakah Saya Boleh Menggantikan Semua Pembolehubah dalam Rentetan Go Sprintf dengan Nilai yang Sama?

Bagaimanakah Saya Boleh Menggantikan Semua Pembolehubah dalam Rentetan Go Sprintf dengan Nilai yang Sama?

Linda Hamilton
Lepaskan: 2024-12-13 05:32:09
asal
131 orang telah melayarinya

How Can I Replace All Variables in a Go Sprintf String with the Same Value?

Menggunakan Sprintf dengan Penggantian Nilai Sama

Dalam Sprintf, keupayaan untuk menggantikan semua pembolehubah dalam rentetan yang diformat dengan nilai yang sama adalah mungkin tetapi memerlukan pengubahsuaian rentetan format.

Argumen Eksplisit Indeks

Kuncinya ialah menggunakan indeks hujah eksplisit sebelum setiap kata kerja pemformatan. Ini membolehkan anda menentukan hujah yang harus digunakan untuk penggantian tertentu itu. Dalam Printf, Sprintf dan Fprintf, tingkah laku lalai adalah menggunakan hujah yang diluluskan secara berurutan. Walau bagaimanapun, indeks hujah eksplisit, dilambangkan dengan [n], membolehkan anda memilih indeks hujah tertentu.

Contoh

Pertimbangkan contoh berikut:

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

Di sini, kami menggunakan indeks argumen eksplisit [1] sebelum setiap kata kerja pemformatan. Ini mengarahkan Sprintf untuk menggunakan hujah pertama, iaitu, val, untuk ketiga-tiga penggantian. Hasilnya, output akan menjadi:

foo in foo is foo
Salin selepas log masuk

Pemudahan Baris Tunggal

Contoh di atas boleh dipermudahkan kepada satu baris:

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

Mengabaikan Indeks Pertama

Selain itu, anda boleh tinggalkan indeks argumen eksplisit pertama, kerana ia secara automatik lalai kepada 1:

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

Dengan memahami indeks argumen eksplisit, anda boleh menentukan nilai yang sama untuk berbilang penggantian dalam Sprintf, tanpa mengira bilangan penentu format.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggantikan Semua Pembolehubah dalam Rentetan Go Sprintf dengan Nilai yang Sama?. 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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan