1. স্ট্রিং তুলনা
স্ট্রিং সহ সবচেয়ে সাধারণ অপারেশনগুলির মধ্যে একটি হল তুলনা। স্ট্রিং ক্লাসে দশটিরও বেশি ভিন্ন পদ্ধতি রয়েছে যা একটি স্ট্রিংকে অন্য স্ট্রিংয়ের সাথে তুলনা করতে ব্যবহৃত হয়। নীচে আমরা সাতটি প্রধানের দিকে নজর দেব।
| পদ্ধতি | বর্ণনা |
|---|---|
|
স্ট্রিং সমান বলে বিবেচিত হয় যদি তাদের সমস্ত অক্ষর মিলে যায়। |
|
অক্ষরের ক্ষেত্রে উপেক্ষা করে, স্ট্রিংগুলির তুলনা করে (তারা বড় হাতের বা ছোট হাতের তা উপেক্ষা করে) |
|
অভিধানিকভাবে স্ট্রিং তুলনা করে। স্ট্রিং সমান হলে 0 প্রদান করে। বর্তমান স্ট্রিং স্ট্রিং প্যারামিটারের চেয়ে কম হলে রিটার্ন মান শূন্যের কম হয়। বর্তমান স্ট্রিং স্ট্রিং প্যারামিটারের চেয়ে বড় হলে রিটার্ন মান তার থেকে বেশি। |
|
কেস উপেক্ষা করার সময় অভিধানিকভাবে স্ট্রিংগুলির তুলনা করে। স্ট্রিং সমান হলে 0 প্রদান করে। বর্তমান স্ট্রিং স্ট্রিং প্যারামিটারের চেয়ে কম হলে রিটার্ন মান নেতিবাচক হয়। বর্তমান স্ট্রিং স্ট্রিং প্যারামিটারের চেয়ে বড় হলে রিটার্ন মান তার থেকে বেশি। |
|
স্ট্রিং অংশ তুলনা |
|
বর্তমান স্ট্রিং স্ট্রিং দিয়ে শুরু হয় কিনা তা পরীক্ষা করেprefix |
|
বর্তমান স্ট্রিং স্ট্রিং দিয়ে শেষ হয় কিনা তা পরীক্ষা করেsuffix |
ধরা যাক আপনি এমন একটি প্রোগ্রাম লিখতে চান যা ব্যবহারকারীকে একটি ফাইলের পাথের জন্য জিজ্ঞাসা করে এবং তারপরে তার এক্সটেনশনের উপর ভিত্তি করে ফাইলের ধরনটি পরীক্ষা করে। এই ধরনের একটি প্রোগ্রামের কোড এই মত কিছু দেখতে পারে:
| কোড | মন্তব্য |
|---|---|
|
একটি Scannerবস্তু তৈরি করুন কনসোল থেকে একটি লাইন পড়ুন প্রদত্ত স্ট্রিং দিয়ে স্ট্রিং শেষ হয় কিনা তা পরীক্ষা করুন path |
2. সাবস্ট্রিং অনুসন্ধান করা হচ্ছে
স্ট্রিং তুলনা করার পরে, দ্বিতীয় সর্বাধিক জনপ্রিয় অপারেশন হল একটি স্ট্রিং অন্যটির ভিতরে খুঁজে পাওয়া। স্ট্রিং ক্লাসেরও এর জন্য কয়েকটি পদ্ধতি রয়েছে:
| পদ্ধতি | বর্ণনা |
|---|---|
|
strবর্তমান স্ট্রিং মধ্যে স্ট্রিং জন্য অনুসন্ধান . প্রথম ঘটনার প্রথম অক্ষরের সূচী প্রদান করে। |
|
strবর্তমান স্ট্রিং-এ স্ট্রিং অনুসন্ধান করে , প্রথম indexঅক্ষরগুলি এড়িয়ে যায়৷ ঘটনার সূচী প্রদান করে। |
|
strশেষ থেকে শুরু করে বর্তমান স্ট্রিং-এ স্ট্রিং অনুসন্ধান করে । প্রথম ঘটনার সূচী প্রদান করে। |
|
প্রথম অক্ষরগুলি strএড়িয়ে শেষ থেকে বর্তমান স্ট্রিং-এ স্ট্রিং অনুসন্ধান করে ৷index |
|
বর্তমান স্ট্রিং একটি নিয়মিত অভিব্যক্তি দ্বারা নির্দিষ্ট একটি প্যাটার্নের সাথে মেলে কিনা তা পরীক্ষা করে৷ |
indexOf(String)এবং পদ্ধতিগুলি indexOf(String, index)প্রায়শই সংমিশ্রণে ব্যবহৃত হয়। প্রথম পদ্ধতিটি আপনাকে বর্তমান স্ট্রিং-এ পাস করা সাবস্ট্রিংয়ের প্রথম উপস্থিতি খুঁজে পেতে দেয়। এবং দ্বিতীয় পদ্ধতিটি আপনাকে প্রথম সূচক অক্ষরগুলি এড়িয়ে দ্বিতীয়, তৃতীয়, ইত্যাদি ঘটনাগুলি খুঁজে পেতে দেয়।
ধরুন আমাদের কাছে " https://domain.com/about/reviews " এর মত একটি url আছে এবং আমরা " codegym.cc " দিয়ে ডোমেইন নাম প্রতিস্থাপন করতে চাই ৷ ইউআরএল-এর বিভিন্ন ধরণের ডোমেইন নাম থাকতে পারে, তবে আমরা নিম্নলিখিতগুলি জানি:
- ডোমেইন নামের আগে দুটি ফরোয়ার্ড স্ল্যাশ রয়েছে — "
//" - ডোমেন নামটি একটি একক ফরোয়ার্ড স্ল্যাশ দ্বারা অনুসরণ করা হয় — "
/"
এই ধরনের একটি প্রোগ্রামের কোড দেখতে কেমন হবে তা এখানে:
| কোড | মন্তব্য |
|---|---|
|
একটি স্ক্যানার অবজেক্ট তৈরি করুন কনসোল থেকে একটি লাইন পড়ুন স্ট্রিংটির প্রথম সংঘটনের সূচী পান " //" আমরা স্ট্রিংটির প্রথম উপস্থিতির সূচী পাই /, কিন্তু শুধুমাত্র অক্ষরগুলির একটি ঘটনার পরেই তাকান //৷ আমরা অক্ষরের শুরু থেকে শেষ পর্যন্ত স্ট্রিং পাই আমরা শেষ থেকে শেষ পর্যন্ত //স্ট্রিং পাই । আমরা স্ট্রিং এবং নতুন ডোমেন সংযুক্ত করি। / |
এবং পদ্ধতিগুলি একইভাবে কাজ করে, শুধুমাত্র অনুসন্ধানটি স্ট্রিংয়ের শেষ থেকে শুরু পর্যন্ত সঞ্চালিত হয় lastIndexOf(String)।lastIndexOf(String, index)
3. সাবস্ট্রিং তৈরি করা
স্ট্রিং তুলনা করা এবং সাবস্ট্রিং খোঁজার পাশাপাশি, আরেকটি খুব জনপ্রিয় ক্রিয়া রয়েছে: একটি স্ট্রিং থেকে একটি সাবস্ট্রিং পাওয়া। যেমনটি ঘটে, আগের উদাহরণটি আপনাকে একটি substring()পদ্ধতি কল দেখিয়েছে যা একটি স্ট্রিংয়ের অংশ ফিরিয়ে দিয়েছে।
এখানে 8টি পদ্ধতির একটি তালিকা রয়েছে যা বর্তমান স্ট্রিং থেকে সাবস্ট্রিংগুলি ফিরিয়ে দেয়:
| পদ্ধতি | বর্ণনা |
|---|---|
|
সূচক পরিসর দ্বারা নির্দিষ্ট করা সাবস্ট্রিং প্রদান করে beginIndex..endIndex। |
|
বর্তমান স্ট্রিং n বার পুনরাবৃত্তি করে |
|
একটি নতুন স্ট্রিং প্রদান করে: অক্ষরটিকে oldCharঅক্ষর দিয়ে প্রতিস্থাপন করেnewChar |
|
বর্তমান স্ট্রিং-এ একটি নিয়মিত এক্সপ্রেশন দ্বারা নির্দিষ্ট করা প্রথম সাবস্ট্রিংকে প্রতিস্থাপন করে। |
|
রেগুলার এক্সপ্রেশনের সাথে মেলে বর্তমান স্ট্রিং-এর সমস্ত সাবস্ট্রিং প্রতিস্থাপন করে। |
|
স্ট্রিংকে ছোট হাতের অক্ষরে রূপান্তর করে |
|
স্ট্রিংটিকে বড় হাতের অক্ষরে রূপান্তর করে |
|
একটি স্ট্রিংয়ের শুরুতে এবং শেষে সমস্ত স্পেস সরিয়ে দেয় |
এখানে উপলব্ধ পদ্ধতিগুলির একটি সারসংক্ষেপ রয়েছে:
substring(int beginIndex, int endIndex)পদ্ধতি
পদ্ধতিটি substringএকটি নতুন স্ট্রিং প্রদান করে যা বর্তমান স্ট্রিং-এর অক্ষর নিয়ে গঠিত, সূচক সহ অক্ষর থেকে শুরু করে beginIndexএবং শেষ হয় endIndex। জাভাতে সমস্ত ব্যবধানের মতো, সূচক সহ অক্ষরটি endIndexব্যবধানে অন্তর্ভুক্ত নয়। উদাহরণ:
| কোড | ফলাফল |
|---|---|
|
|
|
|
|
|
|
|
যদি endIndexপ্যারামিটারটি নির্দিষ্ট করা না থাকে (যা সম্ভব), তাহলে সাবস্ট্রিংটি beginIndex-এর অক্ষর থেকে স্ট্রিংয়ের শেষ পর্যন্ত নেওয়া হয়।
repeat(int n)পদ্ধতি
পুনরাবৃত্তি পদ্ধতিটি কেবল বর্তমান স্ট্রিং nবার পুনরাবৃত্তি করে। উদাহরণ:
| কোড | ফলাফল |
|---|---|
|
|
|
|
|
|
|
|
replace(char oldChar, char newChar)পদ্ধতি
পদ্ধতিটি replace()একটি নতুন স্ট্রিং প্রদান করে যেখানে সমস্ত অক্ষর oldCharঅক্ষর দিয়ে প্রতিস্থাপিত হয় newChar। এটি স্ট্রিংয়ের দৈর্ঘ্য পরিবর্তন করে না। উদাহরণ:
| কোড | ফলাফল |
|---|---|
|
|
|
|
|
|
|
|
replaceFirst()এবং replaceAll()পদ্ধতি
পদ্ধতিটি replaceAll()একটি সাবস্ট্রিংয়ের সমস্ত ঘটনাকে অন্যটির সাথে প্রতিস্থাপন করে। পদ্ধতিটি replaceFirst()নির্দিষ্ট সাবস্ট্রিং দিয়ে পাস করা সাবস্ট্রিং-এর প্রথম ঘটনাকে প্রতিস্থাপন করে। প্রতিস্থাপন করা স্ট্রিং একটি নিয়মিত অভিব্যক্তি দ্বারা নির্দিষ্ট করা হয়. আমরা জাভা মাল্টিথ্রেডিং কোয়েস্টে রেগুলার এক্সপ্রেশন নিয়ে আলোচনা করব ।
উদাহরণ:
| কোড | ফলাফল |
|---|---|
|
|
|
|
|
|
|
|
toLowerCase() and toUpperCase()পদ্ধতি
আমরা এই পদ্ধতিগুলি জানতে পেরেছিলাম যখন আমরা প্রথম ক্লাসের পদ্ধতিগুলি কল করার বিষয়ে শিখি String।
trim()পদ্ধতি
পদ্ধতিটি trim()একটি স্ট্রিং থেকে অগ্রণী এবং পিছনের স্থানগুলি সরিয়ে দেয়। স্ট্রিংয়ের ভিতরে থাকা স্থানগুলি স্পর্শ করে না (যেমন শুরুতে বা শেষে নয়)। উদাহরণ:
| কোড | ফলাফল |
|---|---|
|
|
|
|
|
|
|
|
GO TO FULL VERSION