PHP-তে নিয়মিত অভিব্যক্তির ভিতরে নামযুক্ত গ্রুপ

আসুন আমরা মনে করি কিভাবে আমরা নিয়মিত অভিব্যক্তিতে গ্রুপ ব্যবহার করতাম:

php<?php
  $res = preg_replace('#([a-z])\1#', '!', $str);
?>

কখনও কখনও এমন পরিস্থিতি arises যখন তার সংখ্যার পরিবর্তে গ্রুপটিকে নাম দ্বারা উল্লেখ করা আরও সুবিধাজনক। এর জন্য আমাদের গ্রুপটিকে একটি নাম দিতে হবে:

php<?php
  $res = preg_replace('#(?<letter>[a-z])#', '!', $str);
?>

এখন আমরা \k<name> সিনট্যাক্স ব্যবহার করে এই গ্রুপটি উল্লেখ করতে পারি, এভাবে:

php<?php
  $res = preg_replace('#(?<letter>[a-z])\k<letter>#', '!', $str);
?>

বর্ণিত নামযুক্ত গ্রুপগুলির আরও কয়েকটি বিকল্প সিনট্যাক্স রয়েছে: (?P=name), \k'name', \k{name}।

Задание 1

একটি স্ট্রিং দেওয়া হয়েছে:

php<?php
  $str = '12:59:59 12:59:12 09:45:09';
?>

সমস্ত সময় সহ সাবস্ট্রিং খুঁজুন যেখানে ঘন্টা সেকেন্ডের সাথে মেলে।