লুয়া (Lua) ভাষায় কিছু শক্তিশালী অপারেটর রয়েছে যা ডেটা হ্যান্ডলিং এবং স্ট্রিং ম্যানিপুলেশন সহজ করে তোলে। দুটি গুরুত্বপূর্ণ অপারেটর হল কনক্যাটেনেশন অপারেটর .. এবং **লেন্থ অপারেটর #**। এই অপারেটরগুলো স্ট্রিং এবং টেবিল সম্পর্কিত কাজগুলো করতে ব্যবহৃত হয়। নিচে এই অপারেটরগুলির ব্যবহার বিস্তারিতভাবে আলোচনা করা হলো।
১. কনক্যাটেনেশন অপারেটর ..
লুয়া ভাষায় কনক্যাটেনেশন অপারেটর .. ব্যবহৃত হয় দুটি স্ট্রিং একত্রিত (concatenate) করার জন্য। এটি দুটি বা তার বেশি স্ট্রিংকে যুক্ত করে একটি নতুন স্ট্রিং তৈরি করে।
কনক্যাটেনেশন অপারেটর .. এর উদাহরণ
str1 = "Hello"
str2 = " "
str3 = "World!"
result = str1 .. str2 .. str3
print(result) -- আউটপুট: Hello World!এখানে, তিনটি আলাদা স্ট্রিং str1, str2, এবং str3 কনক্যাটেনেশন অপারেটর .. দ্বারা একত্রিত হয়ে একটি নতুন স্ট্রিং তৈরি হয়েছে, যা "Hello World!"।
কনক্যাটেনেশন অপারেটর .. এর আরও উদাহরণ
name = "John"
age = 30
greeting = "Hello, " .. name .. ". You are " .. age .. " years old."
print(greeting) -- আউটপুট: Hello, John. You are 30 years old.এখানে, ভেরিয়েবল name এবং age এর মান স্ট্রিং এর সাথে কনক্যাটেনেট করা হয়েছে।
২. লেন্থ অপারেটর #
লুয়া ভাষায় লেন্থ অপারেটর # ব্যবহৃত হয় স্ট্রিং বা টেবিলের দৈর্ঘ্য বা আকার (length) নির্ধারণ করতে। এটি স্ট্রিংয়ের চরিত্রের সংখ্যা বা টেবিলের উপাদানের সংখ্যা প্রদান করে।
স্ট্রিংয়ের দৈর্ঘ্য বের করা
str = "Hello, World!"
length = #str
print(length) -- আউটপুট: 13এখানে, স্ট্রিং "Hello, World!" এর দৈর্ঘ্য ১৩, কারণ এতে মোট ১৩টি অক্ষর রয়েছে।
টেবিলের দৈর্ঘ্য বের করা
লুয়া ভাষায় টেবিলের দৈর্ঘ্য বের করতে # অপারেটর ব্যবহৃত হয়, তবে এটি শুধুমাত্র ইনডেক্সড টেবিলের (যেখানে কীগুলি সংখ্যা হয়) ক্ষেত্রে কাজ করে।
myTable = {10, 20, 30, 40}
length = #myTable
print(length) -- আউটপুট: 4এখানে, myTable টেবিলের মধ্যে ৪টি উপাদান রয়েছে, তাই এর দৈর্ঘ্য ৪।
টেবিলের দৈর্ঘ্য, যেখানে গ্যাপ থাকে
যদি টেবিলের মধ্যে কোনো গ্যাপ থাকে (অর্থাৎ কিছু ইনডেক্স বাদ থাকে), তবে # অপারেটর সঠিক দৈর্ঘ্য প্রদান নাও করতে পারে।
myTable = {10, 20, [5] = 30, 40}
length = #myTable
print(length) -- আউটপুট: 2এখানে, টেবিলের দৈর্ঘ্য ২ হিসেবে প্রদর্শিত হয়েছে, কারণ টেবিলের ইনডেক্সগুলি ১, ২ এবং ৫ এর মধ্যে বিভক্ত হয়েছে, এবং # অপারেটর সর্বশেষ কনটিনিউয়াস ইনডেক্স পর্যন্ত হিসাব করে।
সারসংক্ষেপ
- কনক্যাটেনেশন অপারেটর
..: এটি দুটি স্ট্রিংকে একত্রিত করতে ব্যবহৃত হয়। একাধিক স্ট্রিং কনক্যাটেনেট করতে একে একাধিক বার ব্যবহার করা যায়। - লেন্থ অপারেটর
#: এটি একটি স্ট্রিং বা টেবিলের দৈর্ঘ্য বের করতে ব্যবহৃত হয়। স্ট্রিংয়ের ক্ষেত্রে এটি চরিত্রের সংখ্যা দেয়, আর ইনডেক্সড টেবিলের ক্ষেত্রে এটি উপাদানের সংখ্যা বের করে।
লুয়া ভাষায় এই দুটি অপারেটর অত্যন্ত গুরুত্বপূর্ণ এবং প্রায় প্রতিটি প্রোগ্রামে স্ট্রিং ম্যানিপুলেশন বা টেবিলের আকার নির্ধারণের জন্য ব্যবহৃত হয়।
Read more