在Go中替换Windows换行符

时间:2018-01-09 13:10:04

标签: string go replace

尝试使用strings.Replace替换结束的Windows行:

package main

import (
    "fmt"
    "strings"
)

var hw string = "hello\r\nworld"

func main() {
    fmt.Println(hw)
    strings.Replace(hw, "\r\n", " ", -1)
    fmt.Println(hw)
}

我认为这是一个非常简单的事情,但我不知道为什么以上不起作用。

1 个答案:

答案 0 :(得分:3)

您只是打印两次相同的string值。 strings.Replace()会返回您刚丢弃的结果(您不会对其执行任何操作)。存储结果,例如到同一个变量:

fmt.Println(hw)
hw = strings.Replace(hw, "\r\n", " ", -1)
fmt.Println(hw)

输出将是(在Go Playground上尝试):

hello
world
hello world