Go strings.Replace(输入“\n”、“1”)未被识别

Go strings.Replace(输入“\n”、“1”)未被识别,go,Go,我试图处理用户输入的字符串,并编写了以下代码 import ( "bufio" "fmt" "os" "strings" ) func main() { var input string fileScanner := bufio.NewScanner(os.Stdin) fileScanner.Scan() input = fileScanner.Text() replaced := strings.Replace(inp

我试图处理用户输入的字符串,并编写了以下代码

import (
    "bufio"
    "fmt"
    "os"
    "strings"
)

func main() {
    var input string
    fileScanner := bufio.NewScanner(os.Stdin)
    fileScanner.Scan()
    input = fileScanner.Text()
    replaced := strings.Replace(input, "\n", "", -1)
    fmt.Println(replace)
}
但我发现“\n”未替换为“”。“\n”似乎不是字符串。 我尝试了“.”或“,”而不是“\n”,效果很好。
我刚开始学习围棋,这个问题可能太基本了,但我很感谢你的建议

“\”字符作为格式化字符串中的转义字符处理,因此不会被
字符串替换。替换

如果您确实试图替换\n字符本身,而不是新行将其放入原始字符串文字中应该会有所帮助。请参阅以下代码:

package main

import (
    "fmt"
    "strings"
)

func main() {
    var input string
    input = `\naaa`
    replaced := strings.Replace(input, `\n`, "", -1)
    fmt.Println(replaced)
}
替换以下内容:

replaced := strings.Replace(input, "\n", "", -1)
与:


注意搜索表达式周围的反勾号。

发布重复答案时要小心。这与@Ashwin Shirva昨天提供的指导相同,但解释较少。在这种情况下,与其提交新答案,不如更新现有答案。(你还没有upvote特权,但你会在多做一次有用的贡献后获得它。事实上,如果你建议对现有帖子进行两次被接受的编辑,你今天应该可以获得该特权。)
replaced := strings.Replace(input,`\n`, "", -1)