2012-01-25 45 views
14

Tôi đang xem tài liệu về Ruby. Tôi đang nhầm lẫn giữa việc sử dụng %w() hoặc %W() (Sau W là chữ hoa). Sự khác biệt giữa cả hai là gì? Bạn có thể chỉ cho tôi một số tài liệu?Sự khác nhau giữa% w và% W

Trả lời

31

Khi được viết hoa, mảng được tạo từ các chuỗi được nội suy, như sẽ xảy ra trong chuỗi được trích dẫn kép; khi hạ thấp, nó được xây dựng từ các chuỗi không được nội suy, như sẽ xảy ra trong một chuỗi được trích dẫn một lần. Ví dụ:

irb(main):001:0> foo = "bar" 
=> "bar" 
irb(main):002:0> %w(#{foo} bar baz) 
=> ["\#{foo}", "bar", "baz"] 
irb(main):003:0> %W(#{foo} bar baz) 
=> ["bar", "bar", "baz"] 
irb(main):004:0> ^D 
+0

bạn có thể thêm ví dụ không? –

+1

anh ấy có nghĩa là bạn có thể thực hiện các công cụ như% W! Test te # {variable} st !, # {variable} sẽ được diễn giải. trong một% w, nó sẽ được xem như một chuỗi đơn giản. – oldergod

+0

@BhushanLodha: Chắc chắn rồi. Đã thêm một. – mipadi

Các vấn đề liên quan