⊗jsSpREMl 114 of 294 menu

การจัดการหลายบรรทัดใน Regular Expressions ของ JavaScript

Regular expressions เมื่อทำงานกับสตริงหลายบรรทัด มีลักษณะเฉพาะของตัวเอง มาทำความเข้าใจกัน โดยใช้ตัวอย่างสตริงต่อไปนี้ ซึ่งมีอักขระทั่วไป อักขระขึ้นบรรทัดใหม่ และแท็บ:

let str = `111 222 333 444`;

การขึ้นบรรทัดใหม่

อักขระขึ้นบรรทัดใหม่สามารถ จับได้ด้วยคำสั่ง '\n':

let res = str.replace(/\n/g, '!');

ผลลัพธ์ที่เขียนลงในตัวแปรจะเป็นดังนี้ (ช่องว่างระหว่างบรรทัดคือแท็บ):

`111! 222! 333! 444`;

แท็บ

อักขระแท็บสามารถ จับได้ด้วยคำสั่ง '\t':

let res = str.replace(/\t/g, '!');

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

` 111 !222 !333 !444 `;

การทำงานของจุด

คำสั่ง '.' สำหรับสตริงหลายบรรทัด จะไม่จับอักขระขึ้นบรรทัดใหม่:

let res = str.replace(/./g, '!');

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

` !!! !!!! !!!! !!!! `;

อักขระใดๆ

เพื่อจับอักขระทั้งหมดในสตริงหลายบรรทัด ใช้เทคนิคพิเศษคือ การรวม [\s\S] โครงสร้างนี้จะหา อักขระทั่วไปทั้งหมดและอักขระขึ้นบรรทัดใหม่ทั้งหมด:

let res = str.replace(/[\s\S]/g, '!');

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

`!!!!!!!!!!!!!!!!!!`;

เครื่องหมาย caret (^)

ด้วยตัวปรับแต่ง 'm' สามารถเปิดโหมดหลายบรรทัดได้ ในกรณีนี้ เครื่องหมาย caret จะจับ จุดเริ่มต้นของแต่ละบรรทัด:

let res = str.replace(/^/gm, '!');

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

` !111 !222 !333 !444 `;

เครื่องหมายดอลลาร์ ($)

คำสั่ง ' ในโหมดหลายบรรทัด จะจับจุดสิ้นสุดของแต่ละบรรทัด:

let res = str.replace(/$/gm, '!');

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

` 111! 222! 333! 444! `;

โจทย์ปฏิบัติ

ให้สตริง:

` abc def ghi jkl `;

เขียน regular expression ที่จะทำให้ สตริงนี้กลายเป็นดังนี้:

` abc! def! ghi! jkl! `;

ให้สตริง:

` abc def ghi jkl `;

เขียน regular expression ที่จะทำให้ สตริงนี้กลายเป็นดังนี้:

` ! abc ! def ! ghi ! jkl `;

ให้สตริง:

` abc def ghi jkl `;

เขียน regular expression ที่จะทำให้ สตริงนี้กลายเป็นดังนี้:

`! abc def ghi jkl !`;

ให้สตริง:

` abc def ghi jkl `;

เขียน regular expression ที่จะทำให้ สตริงนี้กลายเป็นดังนี้:

`! ! abc ! def ! ghi ! jkl !`;

ให้สตริง:

` abc def ghi jkl `;

เขียน regular expression ที่จะทำให้ สตริงนี้กลายเป็นดังนี้:

`! abc! def! ghi! jkl! !`;

ให้สตริง:

` abc def ghi jkl `;

เขียน regular expression ที่จะทำให้ สตริงนี้กลายเป็นดังนี้:

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