Heim > Backend-Entwicklung > Golang > Wie kann ich eine einzelne Variable über mehrere Platzhalter in Gos fmt.Sprintf() wiederholen?

Wie kann ich eine einzelne Variable über mehrere Platzhalter in Gos fmt.Sprintf() wiederholen?

Susan Sarandon
Freigeben: 2024-12-21 12:53:21
Original
787 Leute haben es durchsucht

How Can I Repeat a Single Variable Across Multiple Placeholders in Go's fmt.Sprintf()?

Variablenwerte in formatierten Zeichenfolgen mit Sprintf replizieren

In Go ermöglicht fmt.Sprintf() die Formatierung von Zeichenfolgen mithilfe von Platzhaltern durch die angegebenen Werte ersetzt. Während normalerweise jedem Platzhalter ein eindeutiger Wert zugewiesen wird, ist es oft wünschenswert, alle Platzhalter durch dieselbe Variable zu ersetzen.

Explizite Argumentindizierung

Um dies zu erreichen, verwendet fmt.Sprintf () verwendet eine explizite Argumentindizierung. Innerhalb der Formatzeichenfolge stellt die Platzierung von [n] vor einem Formatierungsverb sicher, dass das n-te Argument (indiziert von 1) anstelle der standardmäßigen aufsteigenden Reihenfolge formatiert wird. Ebenso gibt [n] vor einem * für Breite oder Genauigkeit das Argument an, das den angegebenen Wert enthält.

Beispielverwendung

Betrachten Sie das in der Frage bereitgestellte Beispiel:

val := "foo"
s := fmt.Sprintf("%v in %v is %v", val)
Nach dem Login kopieren

Um die Variable val über alle Platzhalter hinweg zu replizieren, ändern Sie die Formatzeichenfolge wie folgt folgt:

s := fmt.Sprintf("%[1]v in %[1]v is %[1]v", val)
Nach dem Login kopieren

Dies führt zur gewünschten Ausgabe:

"foo in foo is foo"
Nach dem Login kopieren

Vereinfachte Notation

Beachten Sie, dass das erste explizite Argument index sein kann wird wie standardmäßig weggelassen 1:

s := fmt.Sprintf("%v in %[1]v is %[1]v", val)
Nach dem Login kopieren

Fazit

Durch die Nutzung der expliziten Argumentindizierung kann fmt.Sprintf() verwendet werden, um einen einzelnen Variablenwert über alle Platzhalter in einem Format zu replizieren Zeichenfolge, die eine prägnante und effiziente Lösung für bestimmte Szenarien bietet.

Das obige ist der detaillierte Inhalt vonWie kann ich eine einzelne Variable über mehrere Platzhalter in Gos fmt.Sprintf() wiederholen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage