Formatieren eine Zeichenfolge ohne Drucken in Golang

Jay Singh 26 August 2022
Formatieren eine Zeichenfolge ohne Drucken in Golang

Printf ist wohl die häufigste Implementierung einer als String formatierten Variablen. Golang hat eine einfache Technik zum Formatieren einer Zeichenfolge, ohne sie zu drucken.

Dazu kann die Funktion Sprintf() des Pakets fmt in Go verwendet werden. Der einzige Unterschied zwischen Printf() & Sprintf() besteht darin, dass Printf() die Nachricht formatiert und druckt, während Sprintf() die Nachricht lediglich formatiert.

Verwenden Sie die Funktion Sprintf(), um einen String in Golang zu formatieren

Die Formatierungsfunktionen formatieren die Zeichenfolge basierend auf den ihnen gesendeten Formatbezeichnern.

package main

import (
    "fmt"
)

func main() {
    name := "Jay"
    age := 23

    res := fmt.Sprintf("%s is %d years old", name, age)
    fmt.Println(res)
}

Ausgabe:

Jay is 23 years old

Ein weiteres Beispiel ist die Methode sprintf() im Paket fmt, die einen String formatiert und den Ausgabestring zurückgibt.

package main

import (
    "fmt"
)

func main() {
    name := "Jay"
    country := "India"

    str := fmt.Sprintf("%s is from %s\n", name, country)

    fmt.Println(str)

    name = "Mike"
    age := 20

    str = fmt.Sprintf("%s is %d\n", name, age)

    fmt.Println(str)
}

Ausgabe:

Jay is from India

Mike is 20

Dieses letzte Beispiel zeigt, wie die Formatbezeichner neu angeordnet werden.

package main

import (
	"fmt"
)

func main() {
	a := 2
	b := 3
	c := 4

	res := fmt.Sprintf("There are %d grapes, %d bananas, and %d strawberries.", a, b, c)
	fmt.Println(res)
}

Ausgabe:

There are 2 grapes, 3 bananas, and 4 strawberries.

Verwandter Artikel - Go String