PHP:
রেগুলার এক্সপ্রেশন ব্যবহার করা
কিভাবে:
PHP PCRE (Perl Compatible Regular Expressions) লাইব্রেরির মাধ্যমে নিয়মিত প্রকাশ (regex) সমর্থন করে, যা অনেক বিচিত্র ফাংশন অফার করে। এখানে তাদের ব্যবহার করার উপায় দেওয়া হল:
একটি প্যাটার্ন মিলান:
যদি কোনো স্ট্রিংয়ের মধ্যে একটা প্যাটার্ন আছে কিনা তা যাচাই করতে, preg_match()
ব্যবহার করুন। যদি স্ট্রিংয়ের মধ্যে প্যাটার্নটি পাওয়া যায়, তবে এই ফাংশন 1 রিটার্ন করে এবং যদি না পাওয়া যায় তবে 0 রিটার্ন করে।
if (preg_match("/\bweb\b/i", "PHP is a web scripting language")) {
echo "একটি মিল পাওয়া গিয়েছে।";
} else {
echo "কোনো মিল পাওয়া যায়নি।";
}
// আউটপুট: একটি মিল পাওয়া গিয়েছে।
সকল মিল খুঁজে পাওয়া:
preg_match_all()
তখন ব্যবহৃত হয় যখন আপনার একটি স্ট্রিংয়ের মধ্যে একটি প্যাটার্নের সকল ঘটনা খুঁজে পাওয়ার প্রয়োজন হয়।
$text = "cats and dogs";
$pattern = "/\b([a-z]+)\b/i";
preg_match_all($pattern, $text, $matches);
print_r($matches[0]);
// আউটপুট: Array ( [0] => cats [1] => and [2] => dogs )
টেক্সট প্রতিস্থাপন:
যে টেক্সটের সাথে নিয়মিত প্রকাশন (regex) মাচ করে সেই টেক্সট প্রতিস্থাপনের জন্য preg_replace()
ব্যবহৃত হয়। এটি ডেটা ফর্ম্যাটিং এবং পরিষ্কার করার জন্য অসাধারণভাবে শক্তিশালী।
$originalText = "April 15, 2003";
$pattern = "/(\w+) (\d+), (\d+)/i";
$replacement = '${1}1,$3';
echo preg_replace($pattern, $replacement, $originalText);
// আউটপুট: April1,2003
স্ট্রিংস বিভাজন:
আপনি একটি স্ট্রিংকে অ্যারে হিসেবে বিভাজন করতে পারেন preg_split()
ব্যবহার করে, যেখানে ডেলিমিটারের জন্য একটি প্যাটার্ন নির্দিষ্ট করা হয়।
$text = "PHP is, an extremely popular, scripting language";
$parts = preg_split("/,\s*/", $text);
print_r($parts);
// আউটপুট: Array ( [0] => PHP is [1] => an extremely popular [2] => scripting language )
তাছাড়া, জটিল regex প্যাটার্ন এবং কাজের জন্য, Symfony’s Finder
কম্পোনেন্ট বা Laravel-এর সহায়ক ফাংশনগুলির মত ফ্রেমওয়ার্ক এবং লাইব্রেরিগুলি আরও সুবিধাজনক অ্যাবস্ট্রাকশন লেয়ার সরবরাহ করতে পারে। তবে, PHP স্ক্রিপ্টগুলির মধ্যে দক্ষ টেক্সট প্রক্রিয়াকরণ এবং যাচাইকরণের জন্য PHP-এর বিল্ট-ইন PCRE ফাংশনগুলি বুঝতে এবং ব্যবহার করতে জরুরি।