Unicode en especial utilizando $

Comunidad, muy buenas.

Generalmente tengo una consola de Scala para hacer pruebas de concepto a través de la shell REPL. Dado a que no la tenía instalada me dispuse a bajar Groovy ya que incluye una shell parecida.

Estaba probando con cadenas unicode y resulta que cuando tecleas:
 

Falla, la solución es muy simple y basta con escapar. El problema es cuando recibes el unicode, algo así falla. ¿Existe una manera de escapar cuando recibes el unicode?

Saludos y desde ya, gracias.

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.

Cuando lo recibes como?

Cuando lo recibes como? Cuando el usuario lo escribe?

Re: Cuando lo recibes como?

Digamos que el usuario ingresa en pantalla: U+0024 que es el unicode de "$", esto yo lo traduzco a Groovy cómo "\u"+"0024"... En groovy cómo utilizas "$" para cosas cómo   hay ciertos problemas y debes escaparlo o sea, si vas a utilizar "$" utilizas "\$".

¿No hay manera de escaparlo cuando recibes el unicode?

Intenta utilizando single

Intenta utilizando single quote en vez de doble:

 

Re: Intenta utilizando single

Y esa fue la solución, encerrar la cadena en comilla simple.

¡Gracias!

Super, no sabia si funcionaba

Super, no sabia si funcionaba o no.

Aqui esta la doc:

En groovy una cadena con creada con doble es de tipo String, pero cuando hace falta ( por ejemplo para evaluar una variable con ${var} ) se convierte automaticamente en una GString que pertenece a otra jerarquia.

Para evitarlo y que siempre siga siendo String se puede usar comilla simple como lo hiciste.