ললকোডে স্ট্রিং হ্যান্ডলিং (String Handling) ব্যবহৃত হয় স্ট্রিং বা টেক্সট ডেটার সাথে কাজ করার জন্য। ললকোডে স্ট্রিং নিয়ে কাজ করতে YARN ডেটা টাইপ ব্যবহৃত হয়, এবং স্ট্রিংগুলো ডাবল কোটেশন মার্কের মধ্যে রাখা হয়। স্ট্রিংগুলির সাথে কাজ করার জন্য কিছু সাধারণ অপারেশন ও কৌশল ব্যবহার করা হয়।
স্ট্রিং তৈরি (String Declaration)
ললকোডে একটি স্ট্রিং ভেরিয়েবল তৈরি করতে I HAS A এবং ITZ ব্যবহার করা হয়। স্ট্রিংগুলি ডাবল কোটেশন মার্কের মধ্যে রাখতে হয়।
সিনট্যাক্স:
I HAS A variable_name ITZ "string_value"উদাহরণ:
I HAS A name ITZ "ললকোড"
VISIBLE name // আউটপুট হবে "ললকোড"এখানে, name ভেরিয়েবলটি "ললকোড" স্ট্রিং ধারণ করছে এবং VISIBLE কমান্ডের মাধ্যমে এটি কনসোলে প্রদর্শিত হবে।
স্ট্রিং Concatenation (সংযুক্তকরণ)
ললকোডে দুটি বা আরও স্ট্রিং সংযুক্ত করতে AN ব্যবহার করা হয়। এটি স্ট্রিংগুলিকে একত্রিত করে একটি নতুন স্ট্রিং তৈরি করে।
সিনট্যাক্স:
"string1" AN "string2"উদাহরণ:
I HAS A greeting ITZ "হ্যালো, "
I HAS A name ITZ "ললকোড!"
I HAS A message ITZ greeting AN name
VISIBLE message // আউটপুট হবে "হ্যালো, ললকোড!"এখানে, greeting এবং name দুটি স্ট্রিং AN অপারেটর দিয়ে সংযুক্ত করা হয়েছে এবং message ভেরিয়েবলটিতে সংযুক্ত স্ট্রিং রাখা হয়েছে।
স্ট্রিং দৈর্ঘ্য (String Length)
ললকোডে স্ট্রিংয়ের দৈর্ঘ্য বের করতে GIMMEH বা অন্যান্য কাস্টম ফাংশন ব্যবহার করা হয়, যেগুলোর মাধ্যমে আপনি স্ট্রিংয়ের আকার বা সংখ্যা হিসাব করতে পারেন। তবে, ললকোডে সরাসরি একটি বিল্ট-ইন ফাংশন স্ট্রিংয়ের দৈর্ঘ্য বের করার জন্য নেই। স্ট্রিং ম্যানিপুলেশন করতে কিছু সৃজনশীল কৌশল ব্যবহার করা হয়।
স্ট্রিং থেকে নির্দিষ্ট অংশ বের করা (Substring Extraction)
স্ট্রিংয়ের একটি অংশ বের করতে ললকোডে কোনো সরাসরি বিল্ট-ইন ফাংশন নেই, তবে আপনি কিছু ফাংশন ব্যবহার করে এটি করতে পারেন।
স্ট্রিং তুলনা (String Comparison)
স্ট্রিং তুলনা করতে BOTH SAEM অপারেটর ব্যবহার করা হয়। এই অপারেটরটি দুটি স্ট্রিং সমান কি না তা পরীক্ষা করে এবং ফলস্বরূপ YA RLY (True) অথবা NO WAI (False) ফেরত দেয়।
উদাহরণ:
I HAS A str1 ITZ "Hello"
I HAS A str2 ITZ "Hello"
I HAS A result ITZ BOTH SAEM str1 AN str2
VISIBLE result // আউটপুট হবে YA RLYএখানে, str1 এবং str2 দুটি স্ট্রিং একই হওয়ায় আউটপুট YA RLY হবে।
স্ট্রিং লেন্থ এবং চেকিং (Length and Checking)
ললকোডে স্ট্রিংয়ের দৈর্ঘ্য বা ভেরিয়েবলের মধ্যে কন্টেন্ট চেক করতে সরাসরি কোনো বিল্ট-ইন ফাংশন নেই, তবে আপনি অন্যান্য কৌশল ব্যবহার করে এটি পরীক্ষা করতে পারেন।
সারসংক্ষেপ
- স্ট্রিং তৈরি:
I HAS AএবংITZদিয়ে স্ট্রিং ভেরিয়েবল তৈরি করা হয়। - স্ট্রিং সংযুক্তকরণ:
ANব্যবহার করে দুটি স্ট্রিং একত্রিত করা হয়। - স্ট্রিং তুলনা:
BOTH SAEMদিয়ে দুটি স্ট্রিংয়ের সমতা পরীক্ষা করা হয়। - স্ট্রিং দৈর্ঘ্য: সরাসরি ফাংশন নেই, তবে আপনি কাস্টম কৌশল ব্যবহার করতে পারেন।
ললকোডে স্ট্রিং হ্যান্ডলিং ব্যবহৃত হয় টেক্সট ডেটা পরিচালনা, তুলনা এবং সংযুক্ত করতে, যা কোডের কার্যাবলী আরও গতিশীল এবং কার্যকরী করে তোলে।
ললকোডে স্ট্রিং (Strings) ডিক্লেয়ার এবং ম্যানিপুলেশন করা বেশ সহজ। স্ট্রিং ডেটা টাইপটি মূলত YARN টাইপের মাধ্যমে পরিচালিত হয়, যা এক বা একাধিক চরিত্র ধারণ করতে সক্ষম।
স্ট্রিং ডিক্লারেশন (String Declaration)
ললকোডে স্ট্রিং ডিক্লেয়ার করতে I HAS A ব্যবহার করা হয় এবং স্ট্রিং মানটি ডাবল কোটেশন (") দিয়ে দেওয়া হয়।
সিনট্যাক্স:
I HAS A variable_name ITZ "string_value"এখানে:
variable_nameহলো স্ট্রিং ভেরিয়েবলের নাম।string_valueহলো সেই স্ট্রিং মান যা আপনি অ্যাসাইন করবেন।
উদাহরণ:
I HAS A greeting ITZ "হ্যালো, ললকোড!"
VISIBLE greeting // আউটপুট হবে "হ্যালো, ললকোড!"এখানে:
greetingনামক একটি স্ট্রিং ভেরিয়েবল "হ্যালো, ললকোড!" মান ধারণ করছে এবংVISIBLEকমান্ড দিয়ে সেটি কনসোলে প্রদর্শিত হচ্ছে।
স্ট্রিং ম্যানিপুলেশন (String Manipulation)
ললকোডে স্ট্রিংয়ের কিছু সাধারণ ম্যানিপুলেশন কার্যাবলী রয়েছে। যেমন স্ট্রিং একত্রিত করা, স্ট্রিংয়ের দৈর্ঘ্য বের করা, স্ট্রিং তুলনা ইত্যাদি।
১. স্ট্রিং একত্রিত করা (String Concatenation)
ললকোডে স্ট্রিং একত্রিত করতে AN ব্যবহার করা হয়।
উদাহরণ:
I HAS A firstName ITZ "আজিজুর"
I HAS A lastName ITZ " রহমান"
I HAS A fullName ITZ firstName AN lastName
VISIBLE fullName // আউটপুট হবে "আজিজুর রহমান"এখানে:
firstNameএবংlastNameদুটি স্ট্রিং একত্রিত করেfullNameতৈরি করা হয়েছে।
২. স্ট্রিংয়ের দৈর্ঘ্য বের করা (String Length)
ললকোডে স্ট্রিংয়ের দৈর্ঘ্য বের করার জন্য LENGTH OF ব্যবহার করা হয়।
উদাহরণ:
I HAS A word ITZ "ললকোড"
I HAS A length ITZ LENGTH OF word
VISIBLE length // আউটপুট হবে 7এখানে:
LENGTH OF wordস্ট্রিংwordএর দৈর্ঘ্য বের করে এবংlengthভেরিয়েবলটি সেই মান ধারণ করে।
৩. স্ট্রিং তুলনা (String Comparison)
ললকোডে স্ট্রিং তুলনা করতে BOTH SAEM বা DIFFRINT OF ব্যবহার করা হয়। BOTH SAEM স্ট্রিংগুলির সমান হওয়া পরীক্ষা করে এবং DIFFRINT OF স্ট্রিংগুলির ভিন্নতা পরীক্ষা করে।
উদাহরণ:
I HAS A str1 ITZ "ললকোড"
I HAS A str2 ITZ "ললকোড"
I HAS A result ITZ BOTH SAEM str1 AN str2
VISIBLE result // আউটপুট হবে YA RLYএখানে:
str1এবংstr2দুটি স্ট্রিংয়ের মান সমান হওয়া যাচাই করা হচ্ছে। যদি সমান হয়, তাহলেYA RLY(True) ফলাফল দেখাবে।
৪. স্ট্রিংয়ের অংশ বের করা (Substring Extraction)
ললকোডে স্ট্রিংয়ের কোনো নির্দিষ্ট অংশ বের করার জন্য কোনও সরাসরি ফাংশন নেই, তবে এটি কিছু ম্যানিপুলেশন এবং শর্ত দিয়ে করা যেতে পারে। সাধারণত, ললকোডে একে একে স্ট্রিংয়ের অক্ষরগুলি পরীক্ষা করা হয় বা কোডের অন্যান্য পদ্ধতি ব্যবহার করা হয়।
সারসংক্ষেপ
- স্ট্রিং ডিক্লেয়ার: ললকোডে স্ট্রিং ডিক্লেয়ার করার জন্য
I HAS Aএবং মান অ্যাসাইন করার জন্যITZব্যবহার করা হয়। স্ট্রিংটি ডাবল কোটেশন (") দিয়ে লেখা হয়। - স্ট্রিং একত্রিত করা: স্ট্রিংগুলিকে একত্রিত করতে
ANব্যবহার করা হয়। - স্ট্রিং দৈর্ঘ্য বের করা:
LENGTH OFকমান্ড দিয়ে স্ট্রিংয়ের দৈর্ঘ্য বের করা যায়। - স্ট্রিং তুলনা: স্ট্রিংয়ের সমতা বা ভিন্নতা যাচাই করতে
BOTH SAEMবাDIFFRINT OFব্যবহার করা হয়।
এই স্ট্রিং ম্যানিপুলেশনগুলি ললকোডে স্ট্রিংয়ের সাথে কাজ করতে ব্যবহৃত হয়।
ললকোডে স্ট্রিং কনক্যাটেনেশন (String Concatenation) করার জন্য SMOOSH কমান্ড ব্যবহার করা হয়। এটি দুটি বা তার অধিক স্ট্রিং একত্রিত করার জন্য ব্যবহৃত হয়, যাতে একাধিক স্ট্রিং একসাথে যোগ হয়ে একটি নতুন স্ট্রিং তৈরি হয়।
SMOOSH কমান্ডের ব্যবহার
SMOOSH অপারেটর দুটি বা তার বেশি স্ট্রিং একত্রিত করতে ব্যবহৃত হয়। এটি একটি স্ট্রিংকে অন্য একটি স্ট্রিংয়ের সঙ্গে যোগ করে নতুন একটি স্ট্রিং তৈরি করে।
সিনট্যাক্স:
SMOOSH string1 AN string2এখানে, string1 এবং string2 দুটি স্ট্রিং যা একসাথে যোগ করা হবে।
উদাহরণ ১: স্ট্রিং কনক্যাটেনেশন
I HAS A greeting ITZ "হ্যালো, "
I HAS A name ITZ "ললকোড!"
I HAS A message ITZ SMOOSH greeting AN name
VISIBLE message // আউটপুট হবে "হ্যালো, ললকোড!"এখানে:
greetingএবংnameদুটি স্ট্রিং যোগ করা হয়েছেSMOOSHএর মাধ্যমে, এবংmessageভেরিয়েবলে সেই যোগফল রাখা হয়েছে।
আউটপুট:
হ্যালো, ললকোড!উদাহরণ ২: একাধিক স্ট্রিং কনক্যাটেনেশন
I HAS A part1 ITZ "আজ "
I HAS A part2 ITZ "রবিবার।"
I HAS A full_message ITZ SMOOSH part1 AN part2
VISIBLE full_message // আউটপুট হবে "আজ রবিবার।"এখানে part1 এবং part2 দুটি স্ট্রিং একত্রিত হয়ে full_message ভেরিয়েবলে নতুন স্ট্রিং তৈরি হচ্ছে।
SMOOSH এর ব্যবহার:
SMOOSHব্যবহার করে একাধিক স্ট্রিং যোগ করা যায়।- এটি
ANঅপারেটর দিয়ে স্ট্রিংগুলোকে একত্রিত করে। - এটি খুবই সহজ এবং কার্যকরী পদ্ধতি ললকোডে স্ট্রিং কনক্যাটেনেশন করার জন্য।
সারসংক্ষেপ
SMOOSHকমান্ড দিয়ে আপনি একাধিক স্ট্রিংকে একসাথে যোগ করতে পারেন এবং নতুন স্ট্রিং তৈরি করতে পারেন।SMOOSHস্ট্রিং কনক্যাটেনেশনের জন্য খুবই কার্যকরী এবং সাধারণ পদ্ধতি ললকোডে।
ললকোডে স্ট্রিং কম্প্যারিজন (String Comparison) এবং সাবস্ট্রিং এক্সট্র্যাকশন (Substring Extraction) ব্যবহার করা হয় স্ট্রিংয়ের মধ্যে তুলনা বা একটি স্ট্রিংয়ের অংশ বের করার জন্য। যদিও ললকোডে স্ট্রিং হ্যান্ডলিং এর জন্য বিল্ট-ইন সরঞ্জাম খুব সীমিত, তবুও কিছু মৌলিক স্ট্রিং কম্প্যারিজন এবং সাবস্ট্রিং এক্সট্র্যাকশন করা সম্ভব।
String Comparison (স্ট্রিং তুলনা)
ললকোডে স্ট্রিং তুলনা করতে BOTH SAEM এবং DIFFRINT OF অপারেটর ব্যবহার করা হয়। BOTH SAEM ব্যবহার করে দুটি স্ট্রিং সমান কিনা যাচাই করা হয়, এবং DIFFRINT OF ব্যবহার করে দুটি স্ট্রিং ভিন্ন কিনা তা যাচাই করা হয়।
BOTH SAEM (স্ট্রিং সমান হওয়া)
এই অপারেটরটি দুটি স্ট্রিংয়ের মধ্যে সমতা পরীক্ষা করে। যদি দুটি স্ট্রিং সমান হয়, তাহলে এটি YA RLY (True) ফলাফল প্রদান করবে, অন্যথায় NO WAI (False) ফলাফল প্রদান করবে।
সিনট্যাক্স:
BOTH SAEM string1 AN string2উদাহরণ:
I HAS A str1 ITZ "Hello"
I HAS A str2 ITZ "Hello"
O RLY?
BOTH SAEM str1 AN str2, YA RLY
VISIBLE "স্ট্রিং দুটি সমান।"
NO WAI
VISIBLE "স্ট্রিং দুটি সমান নয়।"
OICএখানে, str1 এবং str2 দুটি স্ট্রিং সমান হলে আউটপুট হবে **"স্ট্রিং দুটি সমান।"**।
DIFFRINT OF (স্ট্রিং ভিন্ন হওয়া)
এই অপারেটরটি দুটি স্ট্রিংয়ের মধ্যে ভিন্নতা পরীক্ষা করে। যদি দুটি স্ট্রিং ভিন্ন হয়, তাহলে এটি YA RLY (True) ফলাফল প্রদান করবে, অন্যথায় NO WAI (False) ফলাফল প্রদান করবে।
সিনট্যাক্স:
DIFFRINT OF string1 AN string2উদাহরণ:
I HAS A str1 ITZ "Hello"
I HAS A str2 ITZ "World"
O RLY?
DIFFRINT OF str1 AN str2, YA RLY
VISIBLE "স্ট্রিং দুটি ভিন্ন।"
NO WAI
VISIBLE "স্ট্রিং দুটি সমান।"
OICএখানে, str1 এবং str2 দুটি স্ট্রিং ভিন্ন হলে আউটপুট হবে **"স্ট্রিং দুটি ভিন্ন।"**।
Substring Extraction (সাবস্ট্রিং এক্সট্র্যাকশন)
ললকোডে স্ট্রিং থেকে সাবস্ট্রিং এক্সট্র্যাক্ট করার জন্য সরাসরি কোনো বিল্ট-ইন ফাংশন নেই, তবে আপনি কিছু সাধারণ প্রক্রিয়া ব্যবহার করে স্ট্রিংয়ের একটি অংশ বের করতে পারেন।
Substring Extraction with String Manipulation (স্ট্রিং ম্যানিপুলেশন দিয়ে সাবস্ট্রিং এক্সট্র্যাকশন)
যেহেতু ললকোডে সরাসরি সাবস্ট্রিং বের করার কোনো ফাংশন নেই, তাই সাধারণভাবে একটি স্ট্রিংয়ের অংশ বের করার জন্য শর্ত এবং ইন্ডেক্সিং ব্যবহার করা হয়।
উদাহরণ:
ধরা যাক, আমাদের কাছে একটি স্ট্রিং রয়েছে "Hello, World!" এবং আমরা "World" অংশটি বের করতে চাই।
I HAS A str ITZ "Hello, World!"
I HAS A substring ITZ "World"
O RLY?
BOTH SAEM "World" AN substring, YA RLY
VISIBLE "সাবস্ট্রিং পাওয়া গেছে!"
NO WAI
VISIBLE "সাবস্ট্রিং পাওয়া যায়নি।"
OICএখানে substring নামক একটি স্ট্রিং ব্যবহার করে স্ট্রিংয়ের অংশ পরীক্ষা করা হচ্ছে।
সারসংক্ষেপ
- স্ট্রিং তুলনা:
BOTH SAEMএবংDIFFRINT OFব্যবহার করে দুটি স্ট্রিংয়ের মধ্যে সমতা বা ভিন্নতা পরীক্ষা করা হয়। - সাবস্ট্রিং এক্সট্র্যাকশন: ললকোডে সরাসরি সাবস্ট্রিং এক্সট্র্যাকশন ফাংশন নেই, তবে শর্ত এবং ইন্ডেক্সিং ব্যবহার করে স্ট্রিংয়ের একটি অংশ বের করা যায়।
এভাবে, ললকোডে স্ট্রিং কম্প্যারিজন এবং সাবস্ট্রিং এক্সট্র্যাকশন মৌলিক কাজগুলির জন্য বিভিন্ন অপারেটর ব্যবহার করা হয়।
ললকোডে স্ট্রিং হ্যান্ডলিং (String Handling) একটি গুরুত্বপূর্ণ অংশ, কারণ এটি টেক্সট বা চরিত্রের সাথে কাজ করার জন্য ব্যবহৃত হয়। ললকোডে স্ট্রিং ডেটা পরিচালনা করার জন্য কিছু সাধারণ অপারেটর এবং ফাংশন রয়েছে, যেমন VISIBLE, GIMMEH, এবং স্ট্রিং কনক্যাটেনেশন বা যোগফল করতে AN ব্যবহার করা হয়।
নিচে স্ট্রিং হ্যান্ডলিং সম্পর্কিত কিছু প্র্যাকটিস এবং উদাহরণ দেওয়া হল:
১. স্ট্রিং ডিক্লেয়ার এবং আউটপুট
ললকোডে স্ট্রিং ডিক্লেয়ার করতে I HAS A ব্যবহার করা হয় এবং স্ট্রিং আউটপুট দিতে VISIBLE ব্যবহার করা হয়।
উদাহরণ:
I HAS A message ITZ "Hello, World!"
VISIBLE message // আউটপুট হবে: Hello, World!এখানে, message নামক একটি স্ট্রিং ভেরিয়েবল Hello, World! অ্যাসাইন করা হয়েছে এবং VISIBLE কমান্ডের মাধ্যমে কনসোলে আউটপুট দেখানো হচ্ছে।
২. স্ট্রিং কনক্যাটেনেশন (Concatenation)
স্ট্রিং কনক্যাটেনেশন করা হয় দুটি বা তার বেশি স্ট্রিং যোগ করে। ললকোডে স্ট্রিং কনক্যাটেনেশন করতে AN ব্যবহার করা হয়।
উদাহরণ:
I HAS A part1 ITZ "Hello, "
I HAS A part2 ITZ "World!"
I HAS A full_message ITZ part1 AN part2
VISIBLE full_message // আউটপুট হবে: Hello, World!এখানে, part1 এবং part2 দুটি স্ট্রিং কনক্যাটেনেট করে full_message তৈরি হয়েছে এবং আউটপুট হবে **"Hello, World!"**।
৩. স্ট্রিং ইনপুট (String Input)
ললকোডে GIMMEH কমান্ড ব্যবহার করে কনসোল থেকে স্ট্রিং ইনপুট নেওয়া হয়।
উদাহরণ:
GIMMEH user_input
VISIBLE "আপনি লিখেছেন: " AN user_inputএখানে, GIMMEH দ্বারা user_input নামক স্ট্রিং ভেরিয়েবলে ইনপুট নেওয়া হয় এবং VISIBLE কমান্ডে সেই ইনপুট কনসোলে প্রদর্শিত হয়।
৪. স্ট্রিং লম্বা (String Length)
ললকোডে স্ট্রিংয়ের দৈর্ঘ্য বের করতে সরাসরি কোন বিল্ট-ইন ফাংশন নেই, তবে সাধারণভাবে একটি স্ট্রিংয়ের দৈর্ঘ্য গণনা করতে লজিক ব্যবহার করা যায়।
উদাহরণ:
I HAS A word ITZ "LOLCode"
I HAS A length ITZ 0
IM IN YR loop
BOTH SAEM length AN LEN OF word, O RLY?
YA RLY
BREAK
OIC
length R SUM OF length AN 1
IM OUTTA YR loop
VISIBLE length // আউটপুট হবে: 7এখানে, word নামক স্ট্রিংয়ের দৈর্ঘ্য গুনন করা হয়েছে length ভেরিয়েবলের মাধ্যমে, এবং আউটপুট হবে 7 (যেহেতু "LOLCode" এর দৈর্ঘ্য 7)।
৫. স্ট্রিং কম্প্যারিসন (String Comparison)
স্ট্রিং তুলনা করতে BOTH SAEM ব্যবহার করা হয়। এটি দুটি স্ট্রিংয়ের সমান হওয়া যাচাই করতে ব্যবহৃত হয়।
উদাহরণ:
I HAS A string1 ITZ "Hello"
I HAS A string2 ITZ "Hello"
I HAS A result ITZ BOTH SAEM string1 AN string2
VISIBLE result // আউটপুট হবে: YA RLYএখানে, string1 এবং string2 দুটি স্ট্রিং সমান হওয়ায় YA RLY আউটপুট হবে।
সারসংক্ষেপ
- স্ট্রিং ডিক্লেয়ার:
I HAS A variable_name ITZ "string_value"ব্যবহার করে। - স্ট্রিং কনক্যাটেনেশন: দুটি স্ট্রিং যোগ করতে
ANব্যবহার করা হয়। - স্ট্রিং ইনপুট:
GIMMEHকমান্ডের মাধ্যমে কনসোলে ইনপুট নেওয়া যায়। - স্ট্রিং লম্বা (Length): স্ট্রিংয়ের দৈর্ঘ্য গণনা করতে লজিক ব্যবহার করা যায়।
- স্ট্রিং কম্প্যারিসন: স্ট্রিং তুলনা করতে
BOTH SAEMব্যবহার করা হয়।
এই সমস্ত প্র্যাকটিসের মাধ্যমে ললকোডে স্ট্রিং হ্যান্ডলিং এর বিভিন্ন কাজ করতে পারবেন।
Read more