使用Gsub逃避撇号
我在Ruby工作,我试图将'
字符转义为\'
以便我可以在SQL中使用它们。 我正在尝试使用gsub
,但它似乎没有用。
"this doesn't work".gsub /'/, '\\'' #=> "this doesnt workt work" "this doesn't work".gsub /'/, '\\\'' #=> "this doesnt workt work" "this doesn't work".gsub /'/, '\\\\'' #=> "this doesn\\'t work" "this doesn't work".gsub /'/, '\\\\\'' #=> "this doesn\\'t work"
我不知道gsub
是否是正确使用的方法,所以我愿意尝试几乎任何可以获得我正在寻找的结果的东西。
由于Ruby正则表达式中的特殊含义/解释,其他人有这个问题。
\’意味着”这是比赛后的一切。 再次逃离\它的工作原理
看到这个答案 。
这有用吗?
"this doesn't work".gsub /'/, '\\\\\'' => "this doesn\\'t work"
你必须逃脱\和’。 当你需要’在结果中,为什么不用“定义结果”
puts "this doesn't work".gsub /'/, "\\\\'" #=> "this doesn\'t work"
\无论如何必须逃脱。