Avatar ·

如何在Go中删除字符串开头和结尾的空格?

大家好!我是Go新手,正在编写一个小型日志解析器。我需要处理来自文本文件的字符串。问题在于字符串的开头和结尾经常有多余的空格、制表符和换行符。例如,字符串可能看起来像这样:" hello world \n"。我需要得到干净的字符串"hello world",去掉所有这些垃圾。\n\n在其他语言中,比如Python,我使用了`strip()`方法,这非常简单。在Go中,我看到了`strings`包,但找不到直接的对应方法。我尝试用循环自己写一个笨办法,但看起来糟糕且可能效率低下。\n\n以下是我的代码示例,它没有按预期工作:\n\n```go\npackage main\n\nimport (\n \"fmt\"\n \"strings\"\n)\n\nfunc main() {\n s := \" hello world \\n\"\n // 尝试使用strings.Trim,但它没有删除空格\n result := strings.Trim(s, \" \")\n fmt.Println(result) // 输出:\"hello world \\n\" — 开头的空格被删除了,但结尾的没有\n```