Aquí podría ser tu PUBLICIDAD


¿Cómo agregar una nueva línea extra con 'puts' sin pegar el carácter de nueva línea en una cadena?

votos
28

Si yo digo

puts Hello

y decida agregar una nueva línea adicional que necesito para hacer esto:

puts Hello\n

Tener este personaje en la cadena es feo. ¿Hay alguna forma de hacer esto sin contaminar mi cadena?

Publicado el 12/03/2009 a las 19:06
fuente por usuario Tim
En otros idiomas...        العربية       

9 respuestas

votos
38

Simplemente haga otra llamada a puts:

puts "Hello"
puts
Respondida el 12/03/2009 a las 07:07
fuente por usuario mipadi


Aquí podría ser tu PUBLICIDAD


votos
21
puts "Hello",""
Respondida el 16/03/2009 a las 10:58
fuente por usuario Michiel de Mare

votos
3

A menudo me encuentro añadiendo una constante en rubí para contener estos caracteres

NEW_LINE = "\n"

puts "Hello" + NEW_LINE

Creo que es más fácil de leer y hace un cambio a todos los caracteres de nueva línea fácil si alguien alguna vez decide separarse cada línea por otra cosa en una fecha posterior.

Respondida el 25/02/2013 a las 12:10
fuente por usuario Anthony

votos
2

La razón por la que Ruby usa "\ n" para una nueva línea es porque está basada en C. Ruby MRI está escrita en C e incluso JRuby está escrita en Java, que se basa en C ++ y está basada en C ... ¡se entiende la idea! Entonces todos estos lenguajes estilo C usan la "\ n" para la nueva línea.

Siempre puede escribir su propio método que actúa como puts pero agrega nuevas líneas basadas en un parámetro para el método.

Respondida el 12/03/2009 a las 07:17
fuente por usuario Lennie

votos
2

¿Crees que esto se ve mejor?


puts "Hello"+$/

</ evil>

Respondida el 12/03/2009 a las 07:15
fuente por usuario Geo

votos
1

simplemente puede escribir

p "Hello"
p 

Eso debería funcionar, así que si quieres que sea breve y sencillo

Respondida el 24/04/2012 a las 07:55
fuente por usuario cjl5108

votos
0

Lo que se quiere fijo: entrada para el script:

puts "Hello there"
puts "Goodbye"

La salida del script:

Hello thereGoodbye

Arreglo para el problema: Entrada para la escritura:

puts "Hello there"
puts
puts "Goodbye"

La salida del script:

Hello there
Goodbye
Respondida el 05/08/2014 a las 10:52
fuente por usuario Nathan

votos
0

Bueno, no creo que una nueva línea explícita sea fea. La respuesta de mipadi también está bien. Solo para arrojar otra respuesta, haga una selección de líneas y luego únase al aray con una nueva línea. :)

Respondida el 12/03/2009 a las 07:09
fuente por usuario EBGreen

votos
-2

Un enfoque simple y legible es utilizar comillas para separar la referencia de nueva línea del resto de su salida, pero mantenerlo en la misma línea:

puts "Add an extra newline" "\n\n"

Respondida el 29/10/2014 a las 03:04
fuente por usuario Toby