⊗ppPmRgOC 241 of 447 menu

คำสั่ง 'หรือ' ในนิพจน์ทั่วไปของ PHP

ในบทเรียนนี้เราจะวิเคราะห์คำสั่ง | ซึ่งเป็นตัวเลือก หรือ ที่ทรงพลังกว่าการใช้ คำสั่ง [] คำสั่งนี้ช่วยให้ สามารถแบ่งนิพจน์ทั่วไปออกเป็นหลายส่วนได้ โดยที่สิ่งที่ค้นหาอาจตรงกับส่วนหนึ่ง ของนิพจน์ทั่วไป หรืออีกส่วนหนึ่ง ลองดูตัวอย่างกัน

ตัวอย่าง

ในตัวอย่างนี้ รูปแบบการค้นหาคือ: ตัวอักษร 'a' สามตัว หรือตัวอักษร 'b' สามตัว:

<?php $str = 'aaa bbb abb'; $res = preg_replace('#a{3}|b{3}#', '!', $str); ?>

ผลลัพธ์ที่เขียนลงในตัวแปรจะเป็นดังนี้:

'! ! abb'

ตัวอย่าง

ในตัวอย่างนี้ รูปแบบการค้นหาคือ: ตัวอักษร 'a' สามตัว หรือตัวอักษร 'b' ตั้งแต่ 1 ตัวขึ้นไป:

<?php $str = 'aaa bbb bbbb bbbbb axx'; $res = preg_replace('#a{3}|b+#', '!', $str); ?>

ผลลัพธ์ที่เขียนลงในตัวแปรจะเป็นดังนี้:

'! ! ! ! axx'

ตัวอย่าง

ในตัวอย่างนี้ รูปแบบการค้นหาคือ: ตัวอักษร หนึ่งตัวหรือมากกว่า หรือตัวเลขสามตัว:

<?php $str = 'a ab abc 1 12 123'; $res = preg_replace('#[a-z]+|\d{3}#', '!', $str); ?>

ผลลัพธ์ที่เขียนลงในตัวแปรจะเป็นดังนี้:

'! ! ! 1 12 !'

ตัวอย่าง

สัญลักษณ์แนวตั้งสามารถแบ่งนิพจน์ทั่วไป ไม่ได้แค่เป็นสองส่วน แต่เป็นกี่ส่วนก็ได้:

<?php $str = 'aaa bbb ccc ddd'; $res = preg_replace('#a+|b+|c+#', '!', $str); ?>

ผลลัพธ์ที่เขียนลงในตัวแปรจะเป็นดังนี้:

'! ! ! ddd'

ตัวอย่าง

หากสัญลักษณ์แนวตั้งอยู่ภายในวงเล็บ คำว่า 'หรือ' จะทำงานเฉพาะภายใน วงเล็บนั้นเท่านั้น ตัวอย่าง ลองค้นหา string ตามรูปแบบต่อไปนี้: ที่ต้น string เป็น 'a' หรือ 'b' หนึ่งครั้งหรือมากกว่า จากนั้นตามด้วยตัวอักษร 'x' สองตัว:

<?php $str = 'axx bxx bbxx exx'; $res = preg_replace('#(a|b+)xx#', '!', $str); ?>

ผลลัพธ์ที่เขียนลงในตัวแปรจะเป็นดังนี้:

'! ! ! exx'

โจทย์ฝึกปฏิบัติ

กำหนด string:

<?php $str = 'aeeea aeea aea axa axxa axxxa'; ?>

เขียนนิพจน์ทั่วไปที่ค้นพบ string ตามรูปแบบ: ที่ขอบเป็นตัวอักษร 'a', และระหว่างนั้น - เป็นตัวอักษร 'e' จำนวนเท่าใดก็ได้ หรือตัวอักษร 'x' จำนวนเท่าใดก็ได้

กำหนด string:

<?php $str = 'aeeea aeea aea axa axxa axxxa'; ?>

เขียนนิพจน์ทั่วไปที่ค้นพบ string ตามรูปแบบ: ที่ขอบเป็นตัวอักษร 'a', และระหว่างนั้น - เป็นตัวอักษร 'e' สองครั้ง หรือตัวอักษร 'x' จำนวนเท่าใดก็ได้

ไทย
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
เราใช้คุกกี้สำหรับการทำงานของเว็บไซต์ การวิเคราะห์ และการปรับเนื้อหาให้เหมาะสมส่วนบุคคล การประมวลผลข้อมูลเกิดขึ้นตาม นโยบายความเป็นส่วนตัว.
ยอมรับทั้งหมด ปรับแต่ง ปฏิเสธ