কম্পিউটার

একটি স্ট্রিং জাভাস্ক্রিপ্টের nম ঘটনা প্রতিস্থাপন করতে একটি পলিফিল তৈরি করুন


ধরা যাক, আমরা একটি পলিফিল ফাংশন removeStr() তৈরি করেছি যা তিনটি আর্গুমেন্ট নেয়, যথা −

  • subStr → যে ঘটনাটির স্ট্রিং অপসারণ করা হবে

  • সংখ্যা → এটি একটি সংখ্যা (সংখ্যা)তম ঘটনাটি স্ট্রিং থেকে সরানো হবে

স্ট্রিং থেকে subStr অপসারণ সফলভাবে হলে ফাংশনটি নতুনটি ফেরত দেবে, অন্যথায় এটি সমস্ত ক্ষেত্রে -1 ফিরে আসবে৷

যেমন −

const str = 'drsfgdrrtdr';
console.log(str.removeStr('dr', 3));

প্রত্যাশিত আউটপুট −

'drsfgdrrt'

এর জন্য কোড লিখি -

উদাহরণ

const str = 'drsfgdrrtdr';
const subStr = 'dr';
const num = 2;
removeStr = function(subStr, num){
   if(!this.includes(subStr)){
      return -1;
   }
   let start = 0, end = subStr.length;
   let occurences = 0;
   for(; ;end < this.length){
      if(this.substring(start, end) === subStr){
         occurences++;
      };
      if(occurences === num){
         return this.substring(0, start) + this.substring(end,
         this.length);
      };
      end++;
      start++;
   }
   return -1;
}
String.prototype.removeStr = removeStr;
console.log(str.removeStr(subStr, num));

আউটপুট

কনসোলে এই কোডের আউটপুট হবে −

drsfgrtdr

কোড বোঝা −

  • RemoveStr() ফাংশনটি প্রথমে চেক করে যে সাবস্ট্রার্টের একটিও ঘটনা নেই কিনা তারপর আমাদের প্রস্থান করা উচিত এবং ফিরে আসা উচিত -1।

  • তারপর এটি সাবস্ট্রিন স্ট্রিং (উইন্ডোটির আকার সাবস্ট্রিনের দৈর্ঘ্যের সমান) সংখ্যা রেকর্ড করতে স্লাইডিং উইন্ডো অ্যালগরিদম ব্যবহার করে।

  • প্রাথমিকভাবে আমরা বামদিকের উইন্ডো থেকে শুরু করি তারপর উইন্ডোর শেষ পর্যন্ত আসল স্ট্রিংয়ের শেষ না হওয়া পর্যন্ত আমরা আমাদের উইন্ডো স্লাইড করতে থাকি।

  • যদি আমাদের উপায়ে, ঘটনার সংখ্যা প্রয়োজনীয় ঘটনার সমান হয়, তাহলে আমরা স্ট্রিং থেকে সেই ঘটনাটিকে ছেঁটে ফেলি এবং এইভাবে প্রাপ্ত নতুন স্ট্রিংটি ফিরিয়ে দিই৷

  • যদি আমরা পুরো স্ট্রিং দিয়ে পুনরাবৃত্তি করি, তাহলে এর মানে হল যে স্ট্রিং-এ subStr-এর পর্যাপ্ত ঘটনা নেই এবং সেক্ষেত্রে আমাদের -1 ফিরে আসা উচিত এবং ফাংশন থেকে প্রস্থান করা উচিত

অবশেষে, আমরা স্ট্রিং.প্রোটোটাইপ-এ removeStr প্রপার্টি যোগ করি যাতে আমরা এটিকে স্ট্রিং ফাংশন হিসেবে বলতে পারি।


  1. জাভাস্ক্রিপ্টে একটি স্ট্রিং-এ একটি নির্দিষ্ট স্ট্রিংয়ের উপস্থিতি কীভাবে গণনা করা যায়

  2. জাভাস্ক্রিপ্টে স্ট্রিং-এ nম অবস্থানে একটি অক্ষর সন্নিবেশ করান

  3. জাভাস্ক্রিপ্টে স্ট্রিং কম্প্রেস করা

  4. Python - স্ট্রিং-এ ডুপ্লিকেট ঘটনা প্রতিস্থাপন করুন