เครื่องมือทดสอบ Regex
ทดสอบนิพจน์ปกติอย่างปลอดภัยแบบเรียลไทม์ในเบราว์เซอร์ของคุณ
รองรับการไฮไลต์ผลลัพธ์และการแยกกลุ่ม
※ คุณสามารถใช้ capture groups (เช่น $1, $2)
🔒ข้อความจะไม่ถูกส่งไปยังเซิร์ฟเวอร์ใดๆ
เกี่ยวกับเครื่องมือทดสอบ Regex
เครื่องมือทดสอบ Regex เป็นเครื่องมือฟรีสำหรับนักพัฒนาที่ช่วยให้คุณสามารถทดสอบและตรวจสอบว่ารูปแบบนิพจน์ปกติ (Regex) ของคุณตรงกับข้อความที่ต้องการหรือไม่ในแบบเรียลไทม์
เครื่องมือนี้ทำงานด้วย regex engine ของ JavaScript (ECMAScript) โดยตรงในเบราว์เซอร์ของคุณ และรองรับการเปิด/ปิดแฟล็กเช่น `g` (global), `i` (ignoreCase), และ `m` (multiline) นอกจากนี้ยังมีการจำลองการแทนที่โดยใช้ capture groups (เช่น `$1`, `$2`)
วิธีใช้งาน
ป้อน Regex
ป้อนรูปแบบที่คุณต้องการทดสอบ เปิดแฟล็กเช่น g, i, m ตามต้องการ
ป้อนสตริง
วางข้อความเป้าหมายที่ต้องการค้นหาในพื้นที่ป้อนข้อมูลด้านซ้าย
ตรวจสอบผลลัพธ์
ส่วนที่ตรงกับรูปแบบจะถูกไฮไลต์แบบเรียลไทม์ในพื้นที่ด้านขวา
ทดสอบการแทนที่
เปิด "ใช้คุณสมบัติการแทนที่" และป้อนสตริงสำหรับแทนที่เพื่อดูตัวอย่างผลลัพธ์การแทนที่
คำศัพท์ Regex
- นิพจน์ปกติ (Regular Expression)
- ลำดับของอักขระที่ระบุรูปแบบการค้นหาในข้อความ นิยมใช้สำหรับการตรวจสอบ (เช่น รูปแบบอีเมล) และการแยก/แทนที่สตริง
- แฟล็ก (Flags)
- ตัวเลือกการทำงานสำหรับ regex `g` (Global) ค้นหาผลลัพธ์ทั้งหมด `i` (IgnoreCase) ทำให้ผลลัพธ์ไม่คำนึงถึงตัวพิมพ์เล็ก/ใหญ่ และ `m` (Multiline) ค้นหาในโหมดหลายบรรทัด
- กลุ่มดักจับ (Capture Group)
- การใส่วงเล็บ `()` ล้อมรอบส่วนของรูปแบบช่วยให้คุณสามารถนำส่วนที่ตรงกันมาใช้ซ้ำในภายหลังเป็นตัวแปร เช่น `$1`, `$2` ในการแทนที่ได้
- การหลีก (Escape)
- การเติมแบ็กสแลช `\` นำหน้าเพื่อจัดการกับอักขระที่มีความหมายพิเศษใน regex (เช่น `.`, `*`, `?`) ให้เป็นอักขระปกติ
- Lookahead / Lookbehind
- ไวยากรณ์ regex ขั้นสูงที่ยืนยันว่ารูปแบบใดรูปแบบหนึ่งอยู่ก่อนหรือหลังรูปแบบอื่นหรือไม่
คำถามที่พบบ่อย
- ถาม:เครื่องมือนี้รองรับ Regex engine ใดบ้าง?
- เครื่องมือนี้ใช้เอนจินนิพจน์ปกติมาตรฐานของ JavaScript (ECMAScript) ดังนั้นอาจไม่ตรงกับพฤติกรรมของ PCRE (PHP ฯลฯ) หรือ regex เฉพาะของ Python (เช่น พฤติกรรมบางอย่างของ capture group แบบระบุชื่อ) อย่างสมบูรณ์
- ถาม:เหตุใดจึงไม่ไฮไลต์ผลลัพธ์ที่ตรงกัน?
- หากมีข้อผิดพลาดทางไวยากรณ์ในรูปแบบของคุณ (เช่น วงเล็บที่ยังไม่ปิด) ข้อความแสดงข้อผิดพลาดจะปรากฏขึ้นและการไฮไลต์จะถูกปิดใช้งาน นอกจากนี้ หากปิดแฟล็ก g (Global) จะมีการไฮไลต์เฉพาะผลลัพธ์แรกที่ตรงกันเท่านั้น
- ถาม:ปลอดภัยหรือไม่ที่จะทดสอบข้อความที่มีข้อมูลละเอียดอ่อน (รหัสผ่าน, ข้อมูลลูกค้า)?
- ใช่ ปลอดภัยอย่างแน่นอน เครื่องมือนี้ประมวลผลทุกอย่างภายในเบราว์เซอร์ของคุณโดยสมบูรณ์ (ฝั่งไคลเอ็นต์) และทั้งข้อความที่คุณป้อนหรือรูปแบบ regex ของคุณจะไม่ถูกส่งไปยังเซิร์ฟเวอร์ภายนอกใดๆ
- ถาม:ฉันจะใช้ค่า capture group เมื่อแทนที่ได้อย่างไร?
- ด้วยการใช้รูปแบบเช่น $1 และ $2 ในสตริงสำหรับแทนที่ คุณสามารถแทรกข้อความที่ตรงกับ capture group กลุ่มที่หนึ่งและสอง () ในรูปแบบ regex ของคุณได้
- ถาม:กระบวนการนี้สามารถทำงานช้าลงหรือค้างได้หรือไม่?
- โปรดทราบว่าการเรียกใช้ regex ที่สร้างขึ้นมาไม่ดีกับข้อความที่ยาวหรือซับซ้อนมาก อาจทำให้เกิด "catastrophic backtracking" ซึ่งอาจทำให้เบราว์เซอร์ของคุณไม่ตอบสนอง
กรณีการใช้งาน
สร้างการตรวจสอบความถูกต้องของแบบฟอร์ม
สร้าง regex สำหรับตรวจสอบที่อยู่อีเมล หมายเลขโทรศัพท์ หรือรหัสไปรษณีย์ในหน้าจอลงทะเบียนผู้ใช้ และทดสอบอย่างละเอียดกับกรณีทดสอบต่างๆ
การแยกวิเคราะห์และดึงข้อมูลไฟล์บันทึก
ใช้เป็นพื้นที่ทดสอบ (sandbox) เมื่อสร้าง regex เพื่อแยกโค้ดข้อผิดพลาดหรือที่อยู่ IP เฉพาะจากบันทึกการเข้าถึงเซิร์ฟเวอร์
การรีแฟคเตอร์โค้ด (Code Refactoring)
ทดสอบรูปแบบการแทนที่อย่างปลอดภัยที่เกี่ยวข้องกับ capture group ที่ซับซ้อน เพื่อแทนที่ชื่อตัวแปรหรือรูปแบบการเรียกใช้ฟังก์ชันเฉพาะในซอร์สโค้ดแบบทั่วทั้งไฟล์
การทำความสะอาดข้อความ
จำลองรูปแบบการแทนที่ล่วงหน้าเพื่อลบช่องว่างแบบเต็มความกว้าง การขึ้นบรรทัดใหม่ที่เกินมา หรือแท็ก HTML ที่ไม่ต้องการออกอย่างปลอดภัย
ส่งความคิดเห็น
โปรดแจ้งให้เราทราบความคิดเห็นของคุณเพื่อช่วยปรับปรุงเครื่องมือ
การส่งความคิดเห็นถูกระงับชั่วคราว
เซิร์ฟเวอร์ไม่ว่างหรือระบบป้องกันสแปมทำงานอยู่ โปรดลองอีกครั้งในภายหลัง