জাভাতে রেজেক্স হোয়াইটস্পেস কীভাবে ব্যবহার করবেন

Jabhate Rejeksa Hoya Itaspesa Kibhabe Byabahara Karabena



Regex বা রেগুলার এক্সপ্রেশন হল বিশেষ অক্ষরের একটি সেট যা স্ট্রিংগুলিতে অক্ষরগুলি অনুসন্ধান করার জন্য একটি প্যাটার্ন তৈরি করে। কম্পিউটার প্রোগ্রামিং এবং সফ্টওয়্যার ইঞ্জিনিয়ারিংয়ে, রেজেক্স শেখা যে কোনও পাঠ্যের তথ্য খুঁজে পেতে খুব সহায়ক হবে। রেগুলার এক্সপ্রেশন ব্যবহার করে সব ধরনের টেক্সট সার্চ, ফরম্যাটিং এবং টেক্সট রিপ্লেসমেন্ট অপারেশন করা যেতে পারে।

এই টিউটোরিয়ালটি আপনাকে জাভাতে রেজেক্স হোয়াইটস্পেস ব্যবহার করার বিষয়ে গাইড করবে।







জাভাতে Regex কি?

একটি নিয়মিত অভিব্যক্তি বা Regex একটি একক অক্ষর বা একটি জটিল প্যাটার্নের মতো সহজ হতে পারে। এটি একটি নির্দিষ্ট ক্রমে পাঠ্য এবং প্রতীকগুলির একটি স্ট্রিং দিয়ে তৈরি করা যেতে পারে। একটি রেজেক্সের বেশিরভাগ অক্ষর অক্ষর এবং টাইপোগ্রাফিক চিহ্ন। Regex কেস-সংবেদনশীল, তাই এটি তৈরি এবং ব্যবহার করার সময় মনে রাখবেন।



জাভাতে রেজেক্স হোয়াইটস্পেস কীভাবে ব্যবহার করবেন?

যদিও জাভাতে কোনো পূর্বনির্ধারিত রেগুলার এক্সপ্রেশন ক্লাস নেই। যাইহোক, আমরা 'ইম্পোর্ট করে রেগুলার এক্সপ্রেশন ব্যবহার করতে পারি' java.util.regex 'লাইব্রেরি। এটি কিছু ক্লাস অন্তর্ভুক্ত করে যেমন ' প্যাটার্ন ', যা একটি রেজেক্স প্যাটার্ন সংজ্ঞায়িত করার জন্য ব্যবহৃত হয়, এবং ' মেলে ” ক্লাস যা প্যাটার্ন দিয়ে অনুসন্ধান করতে ব্যবহৃত হয়।



নিম্নলিখিত হিসাবে জাভাতে রেজেক্স হোয়াইটস্পেস ব্যবহার করার দুটি পদ্ধতি রয়েছে:





    • Pattern.matches() পদ্ধতি ব্যবহার করে (পূর্বনির্ধারিত রেজেক্স ব্যবহার করুন)
    • প্যাটার্ন এবং ম্যাচার ক্লাস ব্যবহার করে (মেলে ব্যবহারকারী-সংজ্ঞায়িত রেজেক্স তৈরি করুন)

আসুন দেখি কিভাবে এই পদ্ধতিগুলি জাভাতে হোয়াইটস্পেসের জন্য রেজেক্সের সাথে কাজ করবে।

পদ্ধতি 1: জাভাতে Pattern.matches() পদ্ধতি সহ পূর্বনির্ধারিত রেজেক্স হোয়াইটস্পেস ব্যবহার করুন

একটি স্ট্রিং এ হোয়াইটস্পেস খুঁজে পেতে, জাভাতে তিনটি সাধারণ রেজেক্স রয়েছে:



    • \s : এটি একটি একক সাদা স্থান প্রতিনিধিত্ব করে।
    • \s+ : এটি একাধিক সাদা স্থান নির্দেশ করে।
    • \u0020 : এটি একটি টেক্সটে হোয়াইটস্পেস খুঁজে পেতে রেজেক্স হিসাবে ব্যবহৃত সাদা স্থানের ইউনিকোড।

আমরা স্ট্যাটিক পদ্ধতিতে এই রেজেক্সগুলি ব্যবহার করতে পারি ' মিল() ' এর ' প্যাটার্ন 'শ্রেণী। প্যাটার্ন ক্লাস 'এর অন্তর্গত java.util.regex 'প্যাকেজ। নীচে Pattern.matches() পদ্ধতির সিনট্যাক্স দেওয়া হল:

বাক্য গঠন

Pattern.maches ( '\s' , '' ) ;


নির্দিষ্ট পদ্ধতিতে দুটি আর্গুমেন্ট লাগে: রেগুলার এক্সপ্রেশন এবং স্ট্রিং মেলে। প্রথম আর্গুমেন্ট '\s' হল সাদা স্থানের রেগুলার এক্সপ্রেশন বা রেজেক্স, এবং দ্বিতীয় আর্গুমেন্ট '' স্ট্রিং মধ্যে স্থান. এটি একটি বুলিয়ান মান হিসাবে সত্য বা মিথ্যা প্রদান করে।

উদাহরণ 1: '\s' WhiteSpace Regex ব্যবহার করুন

এখানে, আমরা ব্যবহার করব ' \s ' Pattern.matches() পদ্ধতিতে regex. আমরা দ্বিতীয় আর্গুমেন্ট হিসাবে মেথডে কোন স্পেস ছাড়াই একটি স্ট্রিং পাস করব। পদ্ধতিটি রেজেক্স এবং স্ট্রিং পরীক্ষা করবে এবং তারপরে একটি বুলিয়ান মান ফিরিয়ে দেবে যা 'এ সংরক্ষণ করা হবে ম্যাচ পরিবর্তনশীল:

বুলিয়ান ম্যাচ = Pattern.maches ( '\s' , '' ) ;


' ব্যবহার করে ম্যাচ ভেরিয়েবলের মান প্রিন্ট করুন System.out.println() 'পদ্ধতি:

System.out.println ( 'স্পেস বিদ্যমান:' + মিল ) ;



'এর দ্বারা ফেরত দেওয়া মান Pattern. matches() 'পদ্ধতি হল' মিথ্যা কারণ পাস করা স্ট্রিংটির কোনো স্থান নেই:


এখন আমরা অন্যান্য রেজেক্সের সাথে হোয়াইটস্পেস মেলাতে আরও কিছু উদাহরণ দেখব।

উদাহরণ 2: '\s+' WhiteSpace Regex ব্যবহার করুন

এই উদাহরণে, আমরা পাস করব ' \s+ 'রেজেক্স' মিল() ' একাধিক স্থান খুঁজে বের করার পদ্ধতি:

বুলিয়ান ম্যাচ = Pattern.maches ( '\s+' , '' ) ;


ম্যাচ ভেরিয়েবলের মান প্রিন্ট করুন যা পদ্ধতি থেকে প্রত্যাবর্তিত ফলাফল সংরক্ষণ করে:

System.out.println ( 'স্পেস বিদ্যমান:' + মিল ) ;



যেহেতু দ্বিতীয় আর্গুমেন্টে স্পেস রয়েছে, ফলস্বরূপ মানটি ' হিসাবে প্রদর্শিত হয় সত্য ”:

উদাহরণ 3: '\u0020' WhiteSpace Regex ব্যবহার করুন

এখানে, আমরা আপনাকে দেখাব কিভাবে ইউনিকোড জাভাতে রেজেক্স হিসাবে ব্যবহৃত হয়। নির্দিষ্ট উদ্দেশ্যে, আমরা ব্যবহার করব ' \u0020 ' সাদা স্থানের ইউনিকোড হিসাবে regex:

বুলিয়ান ম্যাচ = Pattern.maches ( '\u0020' , '' ) ;


ফিরে আসা মান প্রিন্ট করুন:

System.out.println ( 'স্পেস বিদ্যমান:' + মিল ) ;



Pattern.matches() পদ্ধতি প্রিন্ট করবে ' সত্য সাদা স্পেস ধারণকারী একটি পাস স্ট্রিং হিসাবে:


জাভাতে রেজেক্স ব্যবহার করার জন্য অন্য পদ্ধতিতে যাওয়া যাক।

পদ্ধতি 2: প্যাটার্ন এবং ম্যাচার ক্লাস সহ ব্যবহারকারী-সংজ্ঞায়িত রেজেক্স হোয়াইটস্পেস ব্যবহার করুন

দ্য ' প্যাটার্ন ' ক্লাস একটি প্যাটার্ন সংজ্ঞায়িত বা তৈরি করতে ব্যবহৃত হয়, যখন ' মেলে প্রদত্ত প্যাটার্ন অনুযায়ী অনুসন্ধান করতে ক্লাস ব্যবহার করা হয়। একটি রেজেক্সের জন্য প্যাটার্নটি 'এর সাহায্যে তৈরি করা যেতে পারে কম্পাইল() প্যাটার্ন ক্লাসের পদ্ধতি। এটি শুধুমাত্র একটি প্যারামিটার লাগে, যে প্যাটার্নটি আপনি যেকোনো উদ্দেশ্যে কম্পাইল করতে চান।

বাক্য গঠন

Pattern.compile ( ' \t \p{Zs}' ) ;


দ্য মেলে ক্লাস প্যাটার্নের সাথে মেলে ' মিল() 'পদ্ধতি। এটা লাগে ' স্ট্রিং প্যাটার্ন হিসাবে।

বাক্য গঠন

patternVariable.matcher ( স্ট্রিং ) ;


হোয়াইটস্পেসগুলির জন্য কিছু পূর্বনির্ধারিত রেজেক্স রয়েছে যা আমরা উপরে আলোচনা করেছি, বাকিগুলি নীচে তালিকাভুক্ত করা হয়েছে:

    • \\t\\p{Zs}
    • \\p{Zs}

এখন, কিছু উদাহরণ পরীক্ষা করা যাক।

উদাহরণ 1: '\\t\\p{Zs}' WhiteSpace Regex ব্যবহার করুন

এই উদাহরণে, আমরা গণনা করে হোয়াইটস্পেসের সংখ্যা খুঁজে বের করব। প্রথমে আমরা একটি স্ট্রিং তৈরি করব ' s এবং কনসোলে এটি মুদ্রণ করুন:

স্ট্রিং s = 'স্বাগত লিনাক্স হিন্ট' ;
System.out.println ( s ) ;


পরবর্তী, আমরা একটি প্যাটার্ন সংজ্ঞায়িত করব ' \\t\\p{Zs} 'যা জাভাতে একটি হোয়াইটস্পেস রেজেক্স হিসাবে কাজ করে এবং 'এর সমান \s ” প্রদত্ত প্যাটার্ন কম্পাইল করার পরে, পরিবর্তনশীল “ regexPattern 'এর ফলের মান থাকবে:

প্যাটার্ন regexPattern = Pattern.compile ( '\ \t \\p{Zs}' ) ;


কল করুন ' মিল() 'পদ্ধতি এবং পাস' s স্ট্রিং:

ম্যাচার স্ট্রিংস্পেস = regexPattern.matcher ( s ) ;


একটি পূর্ণসংখ্যা টাইপ ভেরিয়েবল তৈরি করুন ' গণনা ' এবং এটি মান দিয়ে শুরু করুন ' 0 ”:

int গণনা = 0 ;


একটি ব্যবহার করে স্ট্রিংটিতে বিদ্যমান হোয়াইটস্পেসের সংখ্যা গণনা করুন যখন ' লুপ. লুপটি স্ট্রিংকে অতিক্রম করবে এবং কাউন্ট ভেরিয়েবলের মান বৃদ্ধি করবে যদি এটি কোনো স্থানের সম্মুখীন হয়:

যখন ( stringSpaces.find ( ) ) {
গণনা++;
}


সবশেষে, একটি স্ট্রিং-এ কতগুলি স্থান পাওয়া যায় তা দেখানোর জন্য গণনার মান প্রিন্ট করুন:

System.out.println ( 'স্ট্রিংয়ে রয়েছে' +গণনা+ 'শূন্যস্থান' ) ;


আউটপুট



উদাহরণ 2: '\p{Zs}' WhiteSpace Regex ব্যবহার করুন

এখন, আমরা অন্য একটি প্যাটার্ন ব্যবহার করে স্ট্রিং-এ হোয়াইটস্পেসগুলি খুঁজে পাব “ \p{Zs} ” এই প্যাটার্ন অনুরূপ কাজ করে ' \s ' এবং ' \s+ ' regex:

প্যাটার্ন regexPattern = Pattern.compile ( '\\p{Zs}' ) ;


এখন, আমরা কল করি ' মিল() 'পদ্ধতি এবং পাস' s যুক্তি হিসাবে স্ট্রিং:

ম্যাচার স্ট্রিংস্পেস = regexPattern.matcher ( s ) ;


উপরের উদাহরণের মতো, আমরা একটি ' যখন একটি স্ট্রিং-এ স্পেস গণনা করতে লুপ করুন এবং মুদ্রণ করুন:



প্রদত্ত আউটপুট নির্দেশ করে যে আমাদের স্ট্রিং ' লিনাক্স হিন্টে স্বাগতম তিনটি হোয়াইটস্পেস রয়েছে:



আমরা সব সহজ পদ্ধতি কম্পাইল করি যা আপনাকে জাভাতে রেজেক্স হোয়াইটস্পেস ব্যবহার করতে সাহায্য করতে পারে।

উপসংহার

হোয়াইটস্পেস এর জন্য অনেক নিয়মিত এক্সপ্রেশন আছে যেমন ' \s ', ' \s+ ', ' \u0020 ', ' \\t\\p{Zs} ', এবং ' \\p{Zs} ” এই রেজেক্সগুলি প্যাটার্ন ক্লাসের ম্যাচ() পদ্ধতিতে বা প্যাটার্ন ক্লাসের সাথে একটি প্যাটার্ন সংজ্ঞায়িত করে এবং ম্যাচার ক্লাস ব্যবহার করে এটি মেলে ব্যবহার করা হয়। সর্বাধিক ব্যবহৃত রেজেক্স হোয়াইটস্পেস হল \s এবং \s+। এই টিউটোরিয়ালে, আমরা জাভাতে রেজেক্স হোয়াইটস্পেস ব্যবহার করার সমস্ত পদ্ধতি কভার করেছি।