字符串中的\不会转义任何内容

时间:2018-11-20 20:02:40

标签: json ruby string

字符\用于转义字符串中的某些字符。我需要一个包含\这样的字符串:

str = "Lucas Andrade \"My name\""

当我打印str时,应该看到以下内容:

print str
# >> Lucas Andrade \"My name\"

我将直接将此字符串嵌入json参数中,以使用HTTParty发送API请求,如下例所示:

params {
  "name": "Lucas",
  "json": {
    "address": "some",
    "street": "example",
    "string": "the custom \"string\""
  }
}

我认为HTTParty不会自动格式化此字符串。

3 个答案:

答案 0 :(得分:3)

我不太懂Ruby,但这通常是通过"\\"完成的,结果是"\"

因此,"Lucas Andrade \\\"My name\\\""将导致您要查找的内容,一个转义的\和一个转义的"

答案 1 :(得分:3)

当您需要将字符串作为JSON发送到API时,为什么不使用JSON.generate来根据需要对字符串进行转义?

JSON.generate("Lucas Andrade \"My name\"")

答案 2 :(得分:1)

您可以将其用单引号引起来。

str = 'Lucas Andrade "My name"'
=> "Lucas Andrade \"My name\""