Como adicionar nova linha extra com 'puts' sem furar caractere de nova linha na corda?
Pergunta
Se eu disser
puts "Hello"
e decidir adicionar uma nova linha extra que eu preciso fazer isso:
puts "Hello\n"
Ter este caractere na seqüência é feio. Existe alguma maneira de fazer isso sem poluir a minha corda?
Solução
Apenas fazer outra chamada para puts
:
puts "Hello"
puts
Outras dicas
puts "Hello",""
Sinto-me frequentemente adicionando uma constante em Ruby para conter esses caracteres
NEW_LINE = "\n"
puts "Hello" + NEW_LINE
Eu acho que é mais legível e faz uma mudança a todos os caracteres de nova linha fácil se alguém decide separar cada linha por outra coisa em alguma data posterior.
Você acha que isso mais agradável aparência?
puts "Hello"+$/
Os usos razão Ruby "\ n" para uma nova linha é porque a sua base em C. Rubi MRI é escrito em C e até mesmo JRuby é escrito em Java que é baseado em C ++ que é baseado no C ... você começa a idéia! Então, todas essas linguagens de estilo C usar o "\ n" para a nova linha.
Você sempre pode escrever seu próprio método que age como puts mas acrescenta novas linhas com base em um parâmetro para o método.
você pode apenas escrever
p "Hello"
p
Isso deve funcionar bem se você quiser mantê-lo curto e simples
Bem, eu não acho que uma nova linha explícita é feio. A resposta de mipadi é muito bem também. Apenas para jogar outra resposta em, fazer uma matriz de linhas, em seguida, juntar-se a aray com uma nova linha. :)
O que você quer fixo: entrada para script:
puts "Hello there"
puts "Goodbye"
A saída do script:
Hello thereGoodbye
correção para o problema: Entrada para script:
puts "Hello there"
puts
puts "Goodbye"
A saída do script:
Hello there
Goodbye