Avatar ·

Como remover espaços iniciais e finais de uma string em Go?

Olá a todos! Sou novo em Go e estou escrevendo um pequeno parser de logs. Preciso processar strings que vêm de um arquivo de texto. O problema é que no início e no final das strings geralmente há espaços extras, tabulações e caracteres de nova linha. Por exemplo, a string pode ser assim: " hello world \n". Preciso obter a string limpa "hello world" sem todo esse lixo.\n\nEm outras linguagens, como Python, eu usava o método `strip()`, e era muito simples. Em Go, vejo o pacote `strings`, mas não encontro um análogo direto. Tentei escrever minha própria solução com loops, mas parece horrível e, provavelmente, ineficiente.\n\nAqui está um exemplo do meu código que não funciona como esperado:\n\n```go\npackage main\n\nimport (\n "fmt"\n "strings"\n)\n\nfunc main() {\n s := " hello world \n"\n // Tentei usar strings.Trim, mas ele não remove espaços\n result := strings.Trim(s, " ")\n fmt.Println(result) // Saída: "hello world \n" — espaços no início foram removidos, mas no final não\n```