Ich habe eine Zeichenfolge in Golang, die von Anführungszeichen umgeben ist. Mein Ziel ist es, alle Anführungszeichen auf den Seiten zu entfernen, aber alle Anführungszeichen im Inneren der Zeichenfolge zu ignorieren. Wie soll ich das machen? Mein Instinkt sagt mir, dass ich eine RemoveAt-Funktion wie in C# verwenden soll, aber in Go sehe ich nichts dergleichen.So entfernen Sie Anführungszeichen um eine Zeichenfolge in Golang
Zum Beispiel:
hello""world
Zur weiteren Klärung dieser:
"hello""world"
sollte umgewandelt werden
"""hello"""
dies werden würde:
""hello""
weil die äußeren NUR entfernt werden sollten. ein
Diese Antwort kopiert die Daten zweimal, einmal in der Zeichenfolge [] Byte Konvertierung und einmal im [] Byte String-Konvertierung. –
@ CeriseLimón Danke, ich lerne immer noch die Beziehung zwischen String und [] Byte. Ich hatte eine Seite, die erklärte, wann eine Kopie passieren würde und wann nicht, aber ich habe sie verlegt. Hast du eine Ressource? – Schwern
Das Backing-Array eines Strings ist unveränderlich, und das Backing-Array eines [] Bytes ist veränderbar. Daraus folgt, dass das Hintergrund-Array kopiert werden muss, wenn von einem Typ in einen anderen konvertiert wird. Das heißt, es gibt Fälle, in denen der Compiler beweisen kann, dass während der Lebensdauer der Zeichenfolge keine Änderungen am [] Byte vorgenommen werden. In diesen Fällen teilt die Zeichenfolge das Backing-Array des [] Bytes. Ein solcher Fall ist die Verwendung eines [] Bytes, um einen Wert in einer Map [string] zu suchen: "m [string (p)]". Die von der Konvertierung zurückgegebene Zeichenfolge teilt das Backing-Array mit dem [] Byte p. –