Ramón, parte de este gran equipo de trabajo, nos hizo el favor de escribir esta sección porque conoce a la perfección este tema.
Solución:
La función incorporada ya está disponible. http://golang.org/pkg/strings/#TrimSuffix
Aquí hay varias formas de eliminar los signos más finales.
package main
import (
"fmt"
"strings"
)
func TrimSuffix(s, suffix string) string
if strings.HasSuffix(s, suffix)
s = s[:len(s)-len(suffix)]
return s
func main()
s := "a string ++"
fmt.Println("s: ", s)
// Trim one trailing '+'.
s1 := s
if last := len(s1) - 1; last >= 0 && s1[last] == '+'
s1 = s1[:last]
fmt.Println("s1:", s1)
// Trim all trailing '+'.
s2 := s
s2 = strings.TrimRight(s2, "+")
fmt.Println("s2:", s2)
// Trim suffix "+".
s3 := s
s3 = TrimSuffix(s3, "+")
fmt.Println("s3:", s3)
Producción:
s: a string ++
s1: a string +
s2: a string
s3: a string +
Sin forma integrada. Pero es trivial hacerlo manualmente.
s := "mystring+"
sz := len(s)
if sz > 0 && s[sz-1] == '+'
s = s[:sz-1]
Si te ha resultado de provecho nuestro artículo, sería de mucha ayuda si lo compartes con otros seniors y nos ayudes a extender este contenido.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)