如何从字符串中删除双引号

时间:2018-08-11 02:52:52

标签: go

我有一个要从网站中提取的字符串,但是,它周围有双引号,因此我试图将其删除。字符串例如:

" 54%"

我尝试过:

strings.Trim(s[0], "\"")

但是它不会删除引号。

非常感谢您的帮助。

3 个答案:

答案 0 :(得分:1)

s := "\"  hello\""

fmt.Println("Without trim: " + s) 
// Without trim: "  hello"

fmt.Println("Trim double quotes: " + strings.Trim(s, "\"")) 
// Trim double quotes:   hello

请参见https://play.golang.org/p/0I2BtS6b_mO

答案 1 :(得分:0)

请提供工作代码。可能是错误的事情:

  • 您使用s [0]表示s的第一个字节,是要使用s还是这是一个字符串数组?
  • 您的字符串可能带有尾随空格或前导空格
  • 您的字符串可能使用智能引号

答案 2 :(得分:0)

您的代码应该可以正常工作,也许您是误解了某些打印结果或存储了错误的值?

ss := []string{"foo", `""`, `"bar"`, `"        54%"`}
for _, s := range ss {
  t := strings.Trim(s, `"`)
  fmt.Printf("OK:    [%s] --> [%s]\n", s, t)
}
// OK:    [foo] --> [foo]
// OK:    [""] --> []
// OK:    ["bar"] --> [bar]
// OK:    ["        54%"] --> [        54%]
//         │           │       │         │
// quotes ─┴───────────┘       │         │
// no quotes ──────────────────┴─────────┘