Heim > Backend-Entwicklung > Golang > Wie kann ich eine Variable in Gos fmt.Sprintf mithilfe von Argumentindizes wiederholen?

Wie kann ich eine Variable in Gos fmt.Sprintf mithilfe von Argumentindizes wiederholen?

Patricia Arquette
Freigeben: 2024-12-30 10:59:18
Original
858 Leute haben es durchsucht

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

Variablen in Sprintf unter Verwendung expliziter Argumentindizes replizieren

Bei der herkömmlichen Verwendung von fmt.Sprintf() werden Variablen nacheinander in die formatierte Zeichenfolge eingesetzt. Es ist jedoch möglich, eine einzelne Variable in der gesamten Zeichenfolge zu replizieren.

Lösung

Durch die Verwendung von expliziten Argumentindizes kann die Formatzeichenfolge so geändert werden, dass sie mehrfach auf dasselbe Argument verweist mal:

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

Die %[n]-Notation vor einem Formatierungsverb gibt den Index des zu verwendenden Arguments an. In diesem Fall gibt %[1] an, dass das erste Argument (val) für alle Instanzen des Platzhalters verwendet werden soll.

Ausgabe

Ausführen des geänderten Sprintf:

fmt.Println(s)
Nach dem Login kopieren

Erzeugt:

foo in foo is foo
Nach dem Login kopieren

Effektiv wird jeder Variablenplatz in der Zeichenfolge durch den Wert von ersetzt val, was zur gewünschten Replikation führt.

Vereinfachte Form

Für das spezifische Szenario, in dem das erste Argument konsistent verwendet werden soll, kann der Index %[1] weggelassen werden:

fmt.Sprintf("%v in %[1]v is %[1]v", "foo")
Nach dem Login kopieren

Diese abgekürzte Syntax vereinfacht die Formatierungszeichenfolge und erreicht dennoch die gleiche Replikationsfunktionalität.

Das obige ist der detaillierte Inhalt vonWie kann ich eine Variable in Gos fmt.Sprintf mithilfe von Argumentindizes 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