Agregar citas a una cadena en VBScript

Tengo este código:

a = "xyz" g = "abcd " & a 

Después de ejecutarlo, el valor de g es abcd xyz .

Sin embargo, quiero citas sobre el valor de a en g . Después de ejecutar el código, g debería ser abcd "xyz" lugar.

¿Cómo puedo lograr esto?

Puedes escapar duplicando las comillas

 g="abcd """ & a & """" 

o escribir una llamada chr() explícita

 g="abcd " & chr(34) & a & chr(34) 

Tienes que usar comillas dobles dobles para escapar de las comillas dobles (lol):

 g = "abcd """ & a & """" 

Usualmente hago esto:

 Const Q = """" Dim a, g a = "xyz" g = "abcd " & Q & a & Q 

Si necesita ajustar cadenas entre comillas más a menudo en su código y encontrar que el enfoque anterior es ruidoso o ilegible, también puede envolverlo en una función:

 a = "xyz" g = "abcd " & Q(a) Function Q(s) Q = """" & s & """" End Function 

La forma tradicional de especificar citas es usar Chr(34) . Esto es resistente a errores y no es una abominación.

 Chr(34) & "string" & Chr(34) 

Puedes hacer como:

 a="""xyz""" g="abcd " & a 

O:

 a=chr(34) & "xyz" & chr(34) g="abcd " & a 

No creo que pueda mejorar estas respuestas ya que las he usado todas, pero mi preferencia es declarar una constante y usar eso, ya que puede ser un verdadero dolor si tienes una secuencia larga e intentas acomodarte con el número correcto de citas y cometer un error. 😉

Diseñé un enfoque simple usando comillas simples al formar las cadenas y luego invocar una función que reemplaza las comillas simples con comillas dobles.

Por supuesto, este enfoque funciona siempre que no necesite incluir comillas simples reales dentro de su cadena.

 Function Q(s) Q = Replace(s,"'","""") End Function 

 user="myself" code ="70234" level ="C" r="{'User':'" & user & "','Code':'" & code & "','Level':'" & level & "'}" r = Q(r) response.write r 

Espero que esto ayude.

Encontré la respuesta para usar comillas dobles y triples insatisfactorias. Usé un DO … LOOP nested para escribir un segmento ASP de código. Hay comillas repetidas dentro de la cadena. Cuando ejecuté el código:

 thestring = "" 

el resultado fue: <`asp: RectangleHotSpot Bottom =" 28

  'Changing the code to the explicit chr() call worked: thestring = "" 

La salida:

  
Intereting Posts