Como adicionar nova linha extra com 'puts' sem furar caractere de nova linha na corda?

StackOverflow https://stackoverflow.com/questions/639810

  •  11-07-2019
  •  | 
  •  

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?

Foi útil?

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
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top