क्या अंतर है?रूबी सरणी:% डब्ल्यू बनाम% डब्ल्यू
उत्तर
% उद्धरण जैसे एकल उद्धरण ''
(कोई परिवर्तनीय इंटरपोलेशन, कम भागने अनुक्रम), जबकि% डब्ल्यू उद्धरण डबल कोट्स ""
की तरह उद्धरण देते हैं।
irb(main):001:0> foo="hello"
=> "hello"
irb(main):002:0> %W(foo bar baz #{foo})
=> ["foo", "bar", "baz", "hello"]
irb(main):003:0> %w(foo bar baz #{foo})
=> ["foo", "bar", "baz", "\#{foo}"]
आपका उदाहरण% w के लिए भी डबल कोट दिखाता है। क्या यह सही है? – Foton
हां। प्रिंटिंग आउटपुट करते समय, रूबी हमेशा डबल कोट्स का उपयोग करती है और '#' जैसे अक्षरों से बच जाती है। ''{{foo}'' और '" \ # {foo} "' आपको वही स्ट्रिंग दें, जिसे आप '# {foo}' == "\ # {foo}" '' irb' में सत्यापित कर सकते हैं । –
यह पहली बार देखने पर थोड़ा उलझन में है, लेकिन स्पष्टीकरण के लिए धन्यवाद। – Foton
% डब्ल्यू सामान्य डबल कोट प्रतिस्थापन करता है। % डब्ल्यू नहीं करता है।
एक पुराने पोस्ट हालांकि, सवाल आ रहा रखने के लिए और जवाब हमेशा मेरे लिए स्पष्ट नहीं है। तो, मेरे विचार यहाँ हैं।
% डब्ल्यू और% डब्ल्यू सामान्य डिलिमिटेड इनपुट प्रकार के उदाहरण हैं, जो Arrays से संबंधित हैं। ऐसे अन्य प्रकार हैं जिनमें% q,% Q,% r,% x और% i शामिल हैं।
ऊपरी और निचले मामले के बीच का अंतर यह है कि यह हमें सिंगल और डबल कोट की विशेषताओं तक पहुंच प्रदान करता है। सिंगल कोट्स और लोअरकेस% डब्ल्यू के साथ, हमारे पास कोई कोड इंटरपोलेशन नहीं है (उदा। # {कुछ कोड}) और काम करने वाले वर्णों की सीमित श्रृंखला (उदा। \, \ N)। डबल कोट्स और अपरकेस% डब्ल्यू के साथ हम इन सुविधाओं तक पहुंच प्राप्त करते हैं।
इस्तेमाल किया जाने वाला डिलीमीटर कोई भी चरित्र नहीं हो सकता है, न केवल खुले कोष्ठक। प्रभाव में देखने के लिए ऊपर दिए गए उदाहरणों के साथ खेलो। प्रतिशत स्ट्रिंग्स के लिए http://cyreath.blogspot.com/2014/05/ruby-w-vs-w-secrets-revealed.html
मार्क
%W
-
एक पूर्ण w और पूरी सूची% के उदाहरण के साथ लिखते हैं, से बचने के पात्रों और सीमांकक के लिए पर एक नजर है %Q
जैसे डबल-उद्धृत सरणी तत्वों के लिए प्रयोग किया जाता है, उदाहरण के लिए,
foo = "!"
%W{hello world #{foo}} # => ["hello", "world", "!"]
%w
का उपयोग एकल-उद्धृत सरणी तत्वों जैसे %q
के लिए किया जाता है।
%w(hello world #{foo})
# => ["hello","world", "\#{foo}"]
- 1. % डब्ल्यू और% डब्ल्यू
- 2. फिडलर बनाम फ़ायरफ़ॉक्स डब्ल्यू/फ़ायरबग
- 3. एच/डब्ल्यू प्रोग्रामिंग के साथ एस/डब्ल्यू प्रोग्रामिंग एसोसिएशन
- 4. ओपनजीएल 3.2 डब्ल्यू/NSOpenGLView
- 5. जर्सी डब्ल्यू/स्प्रिंग 3.0?
- 6. एससीपी डब्ल्यू/एसएसएच: एसपीपी
- 7. प्रोविजनिंग वग्रेंट डब्ल्यू/शेफ
- 8. गार्ड डब्ल्यू/आरएसपीसी 2, रूबी 1.9.3, रेल 3.1.3
- 9. सीएसएस पेज लेआउट डब्ल्यू/ब्रेक
- 10. बेसिक एलडब्ल्यूजेजीएल त्रिकोण डब्ल्यू/ओपनजीएल
- 11. सीमा/CKEditor डब्ल्यू/jQuery के
- 12. रूट एक्सेस डब्ल्यू/एलिवेटेड हेल्पर और एसएमजेबबलेस
- 13. std :: packaged_task संकलन त्रुटि डब्ल्यू/जीसीसी 4.6
- 14. उन्नयन NHibernate और NHibernate सत्यापनकर्ता डब्ल्यू/Nuget
- 15. हेरोकू डब्ल्यू/Django पर Memcached: pylibmc/memcacheify
- 16. एचटीएमएल वर्कफ़्लो डिजाइनर डब्ल्यू/ड्रैग और ड्रॉप
- 17. एक हास्केल दुभाषिया/डब्ल्यू प्रकार परिभाषा
- 18. Symfony 2 डब्ल्यू/PHPUnit 3.6: परीक्षण प्रयोजनों
- 19. jQuery साइकिल 2 उत्तरदायी डब्ल्यू/केंद्रित स्लाइड
- 20. <img src> डब्ल्यू/टाइमआउट?
- 21. ASP.Net MVC और RenderPartial डब्ल्यू/संबंधित पथ
- 22. एंड्रॉइड: योजना 'http' आईसीएस 4.0.4 डब्ल्यू/प्रॉक्सी
- 23. सॉर्ट करने योग्य डब्ल्यू/चयन योग्य पाठ
- 24. जावास्क्रिप्ट संगठन | मॉड्यूल पैटर्न डब्ल्यू/मॉड्यूल
- 25. 'मोनाड ((,) डब्ल्यू)' उदाहरण कहीं भी मानक है?
- 26. एमवीसी 4 डब्ल्यू/डिफ़ॉल्ट सरलमेम्बरशिप प्रदाता
- 27. तंत्रिका नेट ऑप्टिमाइज़ डब्ल्यू/जेनेटिक एल्गोरिदम
- 28. मेवेन, जावा एएचओएमई डब्ल्यू/ओएस एक्स
- 29. कोई रिक्त स्थान बी/डब्ल्यू टेक्स्ट
- 30. डब्ल्यू 3 सी अनुपालन प्रदर्शित करना
"% w" उन लोगों के लिए मेरा सामान्य प्रतिरक्षा है जो रूबी की पठनीयता के बारे में बहुत कमजोर हो जाते हैं। हर समय काम करता है। –
अब आपके पास एक बेहतर प्रतिक्रिया है :-) – errata
एक अप्रासंगिक साइड नोट के रूप में, इस प्रश्न के यूआरएल ने थोड़ी देर के लिए मुझे भ्रमित कर दिया, जबकि पृष्ठ लोड हो रहा था। –