⊗jsSpREOC 115 of 294 menu

คำสั่ง 'หรือ' ใน Regular Expression JavaScript

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

ตัวอย่าง

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

let str = 'aaa bbb abb'; let res = str.replace(/a{3}|b{3}/g, '!');

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

'! ! abb'

ตัวอย่าง

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

let str = 'aaa bbb bbbb bbbbb axx'; let res = str.replace(/a{3}|b+/g, '!');

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

'! ! ! ! axx'

ตัวอย่าง

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

let str = 'a ab abc 1 12 123'; let res = str.replace(/[a-z]+|\d{3}/g, '!');

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

'! ! ! 1 12 !'

ตัวอย่าง

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

let str = 'aaa bbb ccc ddd'; let res = str.replace(/a+|b+|c+/g, '!');

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

'! ! ! ddd'

ตัวอย่าง

หากสัญลักษณ์ | อยู่ภายในวงเล็บ คำสั่ง 'หรือ' จะทำงานเฉพาะภายใน วงเล็บนั้นเท่านั้น

ตัวอย่าง ลองค้นหาสตริงตาม รูปแบบต่อไปนี้: ที่เริ่มต้นด้วย 'a', หรือ 'b' หนึ่งครั้งหรือมากกว่า ตามด้วย ตัวอักษร 'x' สองตัว:

let str = 'axx bxx bbxx exx'; let res = str.replace(/(a|b+)xx/g, '!');

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

'! ! ! exx'

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

กำหนดสตริง:

let str = 'aeeea aeea aea axa axxa axxxa';

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

กำหนดสตริง:

let str = 'aeeea aeea aea axa axxa axxxa';

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