Escaping Apostrophes Using Gsub

前端 未结 2 925
小鲜肉
小鲜肉 2020-12-21 02:40

I\'m working in Ruby and I\'m trying to escape \' characters to \\\' so that I can use them in SQL. I\'m trying to use gsub, but it do

相关标签:
2条回答
  • 2020-12-21 02:53

    Someone else had this very issue, due to a special meaning/interpretation in Ruby's regex.

    \' means $' which is everything after the match. Escape the \ again and it works

    See this answer.

    Does this work?

    "this doesn't work".gsub /'/, '\\\\\'' => "this doesn\\'t work"
    
    0 讨论(0)
  • 2020-12-21 02:57

    You must escape the \ and the '. When you need the ' in the result, why not define the result with "

    puts "this doesn't work".gsub /'/, "\\\\'" #=> "this doesn\'t work"
    

    \ must be escaped anyway.

    0 讨论(0)
提交回复
热议问题