Wie schreibt man mehrzeilige Zeichenketten in Go

Suraj Joshi 21 März 2022
  1. String in Go
  2. Mehrzeilige Zeichenketten in Go
Wie schreibt man mehrzeilige Zeichenketten in Go

String in Go

String in Go unterscheidet sich leicht von anderen Sprachen. In Go ist String eine Folge von einem oder mehreren Zeichen, wobei jedes Zeichen durch einen oder mehrere Zeichensätze in UTF-8-Kodierung bezeichnet wird. Aufgrund dieser Eigenschaft kann in Go String sogar Text aus einer Mischung vieler Sprachen der Welt gebildet werden. Wir können Zeichenketten darstellen, indem wir ein Stück Text in doppelte Anführungszeichen "" einschließen.

package main

import "fmt"
func main() {
    wish := "We will get victory soon!!"
    fmt.Println(wish)
}

Ausgabe:

We will get victory soon!!

Mehrzeilige Zeichenketten in Go

Beim Arbeiten mit großen Zeichenketten wie SQL, HTML oder XML in Go ist das Schreiben mehrzeiliger Zeichenketten erforderlich. Wenn jemand mit Python-Hintergrund arbeitet, weiß er vielleicht, dass dreifache doppelte Anführungszeichen für mehrzeilige Zeichenketten verwendet werden. In diesem Beitrag werden wir verschiedene Techniken zum Schreiben mehrzeiliger Zeichenketten in Go diskutieren.

Hart kodierte Methode

Dies ist der einfachste und naivste Ansatz, um das Problem zu lösen, aber er ist mühsam, da wir für jeden Zeilenumbruch separate Println()-Anweisungen einfügen müssen.

package main

import "fmt"

func main() {
    fmt.Println("Printing ")
    fmt.Println("multiline Strings ")
    fmt.Println("in Go!!")
}

Ausgabe:

Printing 
multiline Strings 
in Go!!

Rohe String-Literale

Die Verwendung des Backquote (`)-Zeichens behandelt Escape-Sequenzen wie \n, \t als String-Literal, und dies erlaubt uns, mehrzeilige Strings zu schreiben.

package main

import "fmt"

func main() {

    multi_line := `Hey!! we
are going to
write multiline strings 
in Go.
`

    fmt.Printf("%s", multi_line)
}

Ausgabe:

Hey!! we
are going to
write multiline strings 
in Go.

Interpretierte Zeichenkettenliterale

Wenn wir Escape-Zeichen wie \n, \t verwenden wollen, sollten wir doppelte Anführungszeichen verwenden, um mehrzeilige Zeichenketten in Go zu schreiben.

package main

import "fmt"

func main() {

    multi_line := "Hey!! we \n" +
        "are going to \n" +
        "write multiline strings\n" +
        "in Go.\n"

    fmt.Printf("%s", multi_line)
}

Ausgabe:

Hey!! we 
are going to 
write multiline strings
in Go.
Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn

Verwandter Artikel - Go String