# What is %w

**URL:** <https://www.ruby-forum.com/t/what-is-w/144343>\
**Category:** Ruby\
**Created:** [July 28, 2008, 8:35pm UTC](https://www.ruby-forum.com/t/what-is-w/144343 "2008-07-28T20:35:24Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![jsamildanach](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/e0b2c6/32.png) [@jsamildanach](https://www.ruby-forum.com/u/jsamildanach)\
**Post date:** [July 28, 2008, 8:35pm UTC](https://www.ruby-forum.com/t/what-is-w/144343/1 "2008-07-28T20:35:24Z")

</div>

What is the %w used for in ruby?

---

<div class="post-metadata">

**Author:** ![jsamildanach](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/e0b2c6/32.png) [@jsamildanach](https://www.ruby-forum.com/u/jsamildanach)\
**Post date:** [July 28, 2008, 8:40pm UTC](https://www.ruby-forum.com/t/what-is-w/144343/2 "2008-07-28T20:40:30Z")

</div>

Hi –

On Tue, 29 Jul 2008, Joel Saltzmanjoelh wrote:

> What is the %w used for in ruby?

To create an array of strings:

%w{ one two three } # same as [“one”, “two”, “three”]

You can use other delimiters, like []. I’m not sure why I’ve  
gravitated toward curly braces for this.

David

---

<div class="post-metadata">

**Author:** ![jsamildanach](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/e0b2c6/32.png) [@jsamildanach](https://www.ruby-forum.com/u/jsamildanach)\
**Post date:** [July 29, 2008, 1:35am UTC](https://www.ruby-forum.com/t/what-is-w/144343/3 "2008-07-29T01:35:03Z")

</div>

What sort of situations is that syntax useful in?

---

<div class="post-metadata">

**Author:** ![jsamildanach](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/e0b2c6/32.png) [@jsamildanach](https://www.ruby-forum.com/u/jsamildanach)\
**Post date:** [July 28, 2008, 8:41pm UTC](https://www.ruby-forum.com/t/what-is-w/144343/4 "2008-07-28T20:41:59Z")

</div>

cool, thanks

---

<div class="post-metadata">

**Author:** ![jsamildanach](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/e0b2c6/32.png) [@jsamildanach](https://www.ruby-forum.com/u/jsamildanach)\
**Post date:** [July 29, 2008, 1:45am UTC](https://www.ruby-forum.com/t/what-is-w/144343/5 "2008-07-29T01:45:34Z")

</div>

Hi –

On Tue, 29 Jul 2008, Sam H. wrote:

> > %w{ one two three } # same as [“one”, “two”, “three”]
> > 
> > You can use other delimiters, like []. I’m not sure why I’ve  
> > gravitated toward curly braces for this.
> 
> What sort of situations is that syntax useful in?

It’s very handy for saving typing. It’s just faster. Also, if your  
strings happen to have quotation marks in them, you don’t have to  
escape them. That may not happen every day, and there are other ways  
to bring that about, but it could be useful.

David

---

<div class="post-metadata">

**Author:** ![jsamildanach](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/e0b2c6/32.png) [@jsamildanach](https://www.ruby-forum.com/u/jsamildanach)\
**Post date:** [July 29, 2008, 1:49am UTC](https://www.ruby-forum.com/t/what-is-w/144343/6 "2008-07-29T01:49:39Z")

</div>

On Mon, Jul 28, 2008 at 4:33 PM, Sam H. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
wrote:

> What sort of situations is that syntax useful in?

When you need an inline array of strings. Compare

MONTHS = [‘January’, ‘February’, ‘March’, ‘April’, ‘May’, ‘June’,  
‘July’, ‘August’, ‘September’, ‘October’, ‘November’, ‘December’]  
MONTHS = %w(January February March April May June July August  
September October November December)

Try typing them both an and you’ll see the use of the syntax 🙂

martin
