DEV Community

Diego Novais
Diego Novais

Posted on • Updated on

Ruby - Diferença entre %w e %W

Qual a diferença entre %w e %W em Ruby?

Quando em maiúsculas %W, o array é construído a partir de strings que são interpoladas, como aconteceria em uma string entre aspas duplas.

Quando em minúsculas %w, é construído a partir de strings que não são interpoladas, como aconteceria em uma string entre aspas simples.

Exemplo:

irb(main):001:0> foo = "bar"
=> "bar"

irb(main):002:0> %w(#{foo} bar baz)
=> ["\#{foo}", "bar", "baz"]

irb(main):002:0> %w("#{foo}" bar baz)
=> ["\"\#{foo}\"", "bar", "baz"]

#(Capital W)
irb(main):003:0> %W(#{foo} bar baz)
=> ["bar", "bar", "baz"]
Enter fullscreen mode Exit fullscreen mode

Contato:
Email: contato@diegonovais.com.br
LinkedIn: https://www.linkedin.com/in/diegonovais/
Github: https://github.com/dnovais

Top comments (0)