⊗ppPmRgSP 248 of 447 menu

การใช้งานแคปเจอริ่งกรุ๊ปในการค้นหาด้วย Regular Expression ใน PHP

สมมติว่าเรามีสตริงบางสตริงที่มี ชื่อโดเมน:

<?php $str = 'eee site.ru bbb'; ?>

เรามาค้นหาโดเมนนั้นและแบ่งมันออก เป็นส่วนต่างๆ: แยกชื่อโดเมนออกจากโซนของมัน สำหรับสิ่งนี้เราจะใช้ แคปเจอริ่งกรุ๊ป ของ Regular Expression

แคปเจอริ่งกรุ๊ปนั้นเป็นองค์ประกอบของอาร์เรย์ ซึ่งคุณสามารถใส่ส่วนต่างๆ ที่พบโดย regex ได้ ในกรณีของเรา ในแคปเจอริ่งกรุ๊ปแรก เราสามารถใส่ชื่อโดเมน และในแคปเจอริ่งกรุ๊ปที่สอง - โซนของมัน

เรามาทำสิ่งนี้กัน ขั้นแรกมาเขียน regex ที่ค้นหาโดเมนในสตริง:

<?php $reg = '#[a-z0-9_-]+\.[a-z]{2,}#'; ?>

ตอนนี้มาแสดงใน regex ของเรา ว่าส่วนใดควรเข้าสู่แคปเจอริ่งกรุ๊ปใด สิ่งนี้ทำได้โดยใช้วงเล็บ เรามา เน้นส่วนของ regex ที่ค้นหา ชื่อโดเมน และส่วนที่ค้นหา โซนโดเมนโดยใช้มัน:

<?php $reg = '#([a-z0-9_-]+)\.([a-z]{2,})#'; ?>

ตอนนี้ในฟังก์ชัน preg_match ในพารามิเตอร์ที่สาม ให้ระบุตัวแปร (ชื่อใดก็ได้):

<?php preg_match($reg, $str, $res); ?>

ในตัวแปรที่ระบุไว้นั้น จะได้อาร์เรย์ที่มีแคปเจอริ่งกรุ๊ปที่พบ โดยในองค์ประกอบที่ศูนย์ของอาร์เรย์ จะเป็นสตริงที่พบ ในองค์ประกอบที่หนึ่ง - แคปเจอริ่งกรุ๊ปแรก ในองค์ประกอบที่สอง - แคปเจอริ่งกรุ๊ปที่สอง และต่อๆ ไป:

<?php preg_match($reg, $str, $res); var_dump($res); // จะได้ผลลัพธ์ ['site.ru', 'site', 'ru'] ?>

กำหนดสตริงที่มีวันที่:

<?php $str = '2025-12-31'; ?>

ให้ใส่ปี เดือน และวัน ลงในแคปเจอริ่งกรุ๊ปแยกต่างหาก

กำหนดสตริงที่มีชื่อไฟล์:

<?php $str = 'index.html'; ?>

ให้ใส่ชื่อไฟล์และนามสกุลของไฟล์ลงในแคปเจอริ่งกรุ๊ปแยกต่างหาก

ไทย
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣTürkmenTürkçeЎзбекOʻzbekTiếng Việt
เราใช้คุกกี้สำหรับการทำงานของเว็บไซต์ การวิเคราะห์ และการปรับเนื้อหาให้เหมาะสมส่วนบุคคล การประมวลผลข้อมูลเกิดขึ้นตาม นโยบายความเป็นส่วนตัว.
ยอมรับทั้งหมด ปรับแต่ง ปฏิเสธ