Yang merupakan cara efektif untuk memangkas spasi putih variabel string terkemuka dan tertinggal di Go?
Yang merupakan cara efektif untuk memangkas spasi putih variabel string terkemuka dan tertinggal di Go?
Jawaban:
Sebagai contoh,
package main
import (
"fmt"
"strings"
)
func main() {
s := "\t Hello, World\n "
fmt.Printf("%d %q\n", len(s), s)
t := strings.TrimSpace(s)
fmt.Printf("%d %q\n", len(t), t)
}
Keluaran:
16 "\t Hello, World\n "
12 "Hello, World"
Ada banyak fungsi untuk memangkas string.
Lihat mereka di sana: Potong
Berikut ini contohnya, diadaptasi dari dokumentasi, menghilangkan spasi putih awal dan akhir:
fmt.Printf("[%q]", strings.Trim(" Achtung ", " "))
fmt.Printf("%q", strings.Trim("\t\t\t\t", `! \t`))
Ini tidak berfungsi
strings.TrimSpace(str)
?
package main
import (
"fmt"
"strings"
)
func main() {
fmt.Println(strings.TrimSpace(" \t\n Hello, Gophers \n\t\r\n"))
}
Output: Halo, akan menghubungkan
Dan cukup ikuti tautan ini - https://golang.org/pkg/strings/#TrimSpace
Untuk memangkas string Anda, paket "string" Go memiliki TrimSpace()
, Trim()
fungsi yang memangkas ruang utama dan belakang.
Periksa dokumentasi untuk informasi lebih lanjut.
Sama seperti @Kabeer telah disebutkan, Anda dapat menggunakan TrimSpace dan berikut ini adalah contoh dari dokumentasi golang:
package main
import (
"fmt"
"strings"
)
func main() {
fmt.Println(strings.TrimSpace(" \t\n Hello, Gophers \n\t\r\n"))
}
@peterSO memiliki jawaban yang benar. Saya menambahkan lebih banyak contoh di sini:
package main
import (
"fmt"
strings "strings"
)
func main() {
test := "\t pdftk 2.0.2 \n"
result := strings.TrimSpace(test)
fmt.Printf("Length of %q is %d\n", test, len(test))
fmt.Printf("Length of %q is %d\n\n", result, len(result))
test = "\n\r pdftk 2.0.2 \n\r"
result = strings.TrimSpace(test)
fmt.Printf("Length of %q is %d\n", test, len(test))
fmt.Printf("Length of %q is %d\n\n", result, len(result))
test = "\n\r\n\r pdftk 2.0.2 \n\r\n\r"
result = strings.TrimSpace(test)
fmt.Printf("Length of %q is %d\n", test, len(test))
fmt.Printf("Length of %q is %d\n\n", result, len(result))
test = "\r pdftk 2.0.2 \r"
result = strings.TrimSpace(test)
fmt.Printf("Length of %q is %d\n", test, len(test))
fmt.Printf("Length of %q is %d\n\n", result, len(result))
}
Anda dapat menemukan ini di taman bermain Go lang juga.