การใช้ Named Capturing Groups ภายใน Regular Expression ใน JavaScript

ขอให้เรานึกย้อนถึงวิธีที่เราใช้ capturing groups ภายใน regular expression นั่นเอง:

javascriptlet res = str.replace(/([a-z])\1/g, '!');

บางครั้งมีสถานการณ์ที่สะดวกกว่าในการอ้างอิงถึง group ไม่ใช่ด้วยหมายเลขของมัน แต่ด้วยชื่อ สำหรับ สิ่งนี้เราจำเป็นต้องตั้งชื่อให้กับ group:

javascriptlet res = str.replace(/(?<letter>[a-z])/g, '!');

ตอนนี้เราสามารถอ้างอิงถึง group นี้ ผ่านไวยากรณ์ \k<name> ได้ ดังนี้:

javascriptlet res = str.replace(/(?<letter>[a-z])\k<letter>/g, '!');
Задание 1

กำหนดให้สตริง:

javascriptlet str = '12:59:59 12:59:12 09:45:09';

จงค้นหาสตริงย่อยทั้งหมดที่เป็นเวลา ซึ่ง ชั่วโมงตรงกับวินาที