Tengo una cadena muy grande que necesita para escapar de todas las comillas simples en ella, por lo que puedo alimentar a JavaScript sin molestarlo. No tengo control sobre la cadena externa, por lo que no puedo cambiar la fuente de datos.Reemplazar comilla simple con comilla inversa comilla simple
Ejemplo:
Cote d'Ivoir -> Cote d\'Ivoir
(la cadena real es muy largo y contiene muchas citas individuales)
que estoy tratando de esto mediante el uso gsub
en la cadena, pero no puede conseguir que esto trabajo:
a = "Cote d'Ivoir"
a.gsub("'", "\\\'")
pero esto me da:
=> "Cote dIvoirIvoir"
También probé:
a.gsub("'", 92.chr + 39.chr)
pero dieron el mismo resultado; Sé que tiene algo que ver con las expresiones regulares, pero nunca las obtengo.
Es posible que desee considerar también el escape de comillas dobles, ya que alguien puede actualmente romper su programa al ingresar al país 'My Nefarious' como su país. Es lo que hace Rails con su ayudante 'escape_javascript' http://api.rubyonrails.org/classes/ActionView/Helpers/JavaScriptHelper.html –