রুবি অ্যারে:% ডাব্লু বনাম% ডাব্লু


152

পার্থক্য কি?


18
"% ডাব্লু" হ'ল রুবীর পাঠযোগ্যতার বিষয়ে যারা খুব সামান্য কৌতুকপূর্ণ হন তাদের কাছে আমার স্বাভাবিক জবাব। প্রতিবার কাজ করে।
ক্রেগ স্টান্টজ

এখন আপনাকে একটি আরো উন্নত প্রতিক্রিয়া :-) আছে
ত্রুটি-বিচ্যুতি

6
অপ্রাসঙ্গিক পার্শ্ব নোট হিসাবে, এই প্রশ্নের URL টি পৃষ্ঠাটি লোড হওয়ার সময় আমাকে কিছুক্ষণের জন্য বিভ্রান্ত করেছিল।
মনিকা এর মামলা মোকদ্দমা

উত্তর:


233

% ''ডাবল উদ্ধৃতি যেমন একক উদ্ধৃতি (কোনও ভেরিয়েবল ইন্টারপোলেশন, কম পালানোর ক্রম নয়),% ডাবল উদ্ধৃতির মত উদ্ধৃতি ""

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}"]

আপনার উদাহরণ% ডাব্লু এর জন্য ডাবল উক্তিও দেখায়। এটা কি ঠিক?
ফোটন

হ্যাঁ. আউটপুট মুদ্রণের সময়, রুবি সর্বদা ডাবল উদ্ধৃতি ব্যবহার করে এবং এর মতো অক্ষরগুলি থেকে পালিয়ে যায় #'#{foo}'এবং "\#{foo}"আপনি একই স্ট্রিং, যা আপনার সাথে যাচাই করতে পারেন দিতে '#{foo}' == "\#{foo}"সালে irb
ব্রায়ান ক্যাম্পবেল

এটি প্রথম দেখার ক্ষেত্রে কিছুটা বিভ্রান্তিকর, তবে ব্যাখ্যার জন্য ধন্যবাদ।
ফোটন

29

% W বনাম% w এর জন্য আমি একটি অ্যাপ্লিকেশন পেয়েছি:

greetings = %W(hi hello #{"how do you do"})
# => ["hi", "hello", "how do you do"]

12
যদিও এই ক্ষেত্রে, এটি করা সম্ভবত আরও সহজgreetings = %w(hi hello how\ do\ you\ do)
ডিনজাস

21

% ডাব্লু স্বাভাবিক ডাবল উদ্ধৃতি বিকল্পগুলি সম্পাদন করে। % ডাব্লু না।


11

একটি পুরাতন পোস্ট হলেও প্রশ্নটি সামনে আসতে থাকে এবং উত্তরগুলি আমার কাছে সর্বদা পরিষ্কার বলে মনে হয় না। সুতরাং, এখানে আমার চিন্তাভাবনা।

% ডাব্লু এবং% ডাব্লু জেনারেল ডিলিমিটড ইনপুট ধরণের উদাহরণ , যা অ্যারে সম্পর্কিত। অন্যান্য ধরণের মধ্যে রয়েছে% q,% Q,% r,% x এবং% i।

আপার এবং লোয়ার কেসের মধ্যে পার্থক্য হ'ল এটি আমাদের একক এবং ডাবল উদ্ধৃতির বৈশিষ্ট্যগুলিতে অ্যাক্সেস দেয়। একক উদ্ধৃতি এবং ছোট ছোট% w এর সাথে আমাদের কোনও কোড ইন্টারপোলেশন নেই (উদাহরণস্বরূপ # {কিছু কোড) এবং কাজকর্মের সীমিত পরিসীমা (যেমন।, \ N) characters ডবল কোট এবং বড় হাতের% এর ওয়াট আমরা না এই বৈশিষ্ট্যগুলি এক্সেস আছে।

ব্যবহৃত ডিলিমিটারটি কেবলমাত্র উন্মুক্ত বন্ধনী নয়, কোনও চরিত্র হতে পারে। এটি কার্যকরভাবে দেখতে উপরের উদাহরণগুলির সাথে খেলুন।

% ডাব্লু এবং সম্পূর্ণ তালিকার উদাহরণ সহ সম্পূর্ণ লেখার জন্য, অক্ষর এবং সীমানা থেকে মুক্ত হওয়া - একবার দেখুন: http://cyreath.blogspot.com/2014/05/ruby-w-vs-w-secrets-revealed .html

ছাপ


1
এটি একটি ভাল নিবন্ধ। আমি বুঝতে পারিনি যে আপনি একইভাবে স্ট্রিং বা অন্যান্য জিনিস তৈরি করতে পারেন এবং ঘেরযুক্ত অক্ষরগুলি আপনি যা চান তা হতে পারে। উদাহরণস্বরূপ,%w&readable af&
ডেক্স


1

%Wডাবল-কোটেড অ্যারে উপাদানগুলির জন্য ব্যবহৃত হয় %Q, উদাহরণস্বরূপ,

foo = "!"
%W{hello world #{foo}} # => ["hello", "world", "!"]

%wএকক-উদ্ধৃত অ্যারে উপাদানগুলির মতো ব্যবহৃত হয় %q

%w(hello world #{foo})
# => ["hello","world", "\#{foo}"]

0
array = %w(a b c d) 

একই রকম

array = ["a", "b", "c", "d"]

%w স্ট্রিংয়ের উদ্ধৃতি চিহ্নের জন্য একটি শর্ট কাট প্রতীক!

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.