ตัวทดสอบ Regex
ทดสอบ regex ออนไลน์พร้อมไฮไลต์ match แบบสด จำนวน match ตำแหน่ง index และผลลัพธ์ JSON
คำอธิบายแนวคิด
การทดสอบ Regex ตรวจสอบเจตนาการจับคู่และกฎสกัดข้อมูลก่อนใช้
Regex Tester ช่วยยืนยัน pattern, flag และพฤติกรรม capture บนเบราว์เซอร์ก่อนนำไปใช้กับข้อมูลจริง
สำหรับ email, URL หรือรูปแบบ log ควรกำหนดเจตนาการจับก่อน แล้วปรับ regex ทีละรอบด้วยตัวอย่างจริงเพื่อลดการจับเกินหรือพลาด.
รัน regex แล้วตรวจจำนวน match จุดเริ่ม/จุดสิ้นสุด และกลุ่ม capture พร้อมกันเพื่อตรวจว่าข้อความที่จับได้เป็นเป้าหมาย
เครื่องมือนี้อิงกฎ JavaScript RegExp จึงควรทดสอบกับข้อมูลจริงอีกครั้งเมื่อมี string ยาวหรือ pattern ซับซ้อนเพื่อป้องกันปัญหาความเร็วและ false positive
วัตถุประสงค์การใช้งาน
ใช้เพื่อยืนยันการกรอง, parse และตรวจสอบรูปแบบก่อนนำเข้ากระบวนการอัตโนมัติหรืองานดึงข้อมูล
Pattern, flag และ capture
g เปลี่ยนเป็นการจับทั้งหมด, i/m/s/u มีผลต่อ case, newline และ Unicode; capture group กำหนดส่วนข้อความที่จะนำไปใช้
ตรวจผลลัพธ์
ใช้การไฮไลต์ match และ JSON เพื่อตรวจช่วงการจับและค่าที่จับได้ก่อนคัดลอกต่อ
ประสิทธิภาพและ false positive
เริ่มจากตัวอย่างเล็กแล้วค่อยขยายชุดข้อมูลใหญ่เพื่อตรวจ pattern ช้าหรือการจับเกินก่อนนำไปใช้
หากการจับคู่ช้าไม่เสถียร ให้ลดความซับซ้อน pattern, เพิ่ม anchor และทดสอบด้วย edge case ใหม่อีกครั้ง
ตัวทดสอบ Regex พื้นที่ทำงาน
วิธีใช้
- 1 ป้อน regular expression pattern ของคุณ
- 2 เปิด flags g, i, m, s หรือ u ตามต้องการ
- 3 วางสตริงทดสอบแล้วตรวจ match จากการทดสอบ regex
- 4 ปรับ pattern โดยอิงจากข้อความ error หรือผลลัพธ์ที่ไฮไลต์
กรณีใช้งานทั่วไป
- ตรวจ pattern อีเมลหรือ ID
- ทดสอบ regular expression กับสตริง log
- เปรียบเทียบผลลัพธ์ flags g/i/m/s/u ของ JavaScript RegExp
คำถามที่พบบ่อย
รองรับตัวเลือก regular expression ใดบ้าง?
ป้อน pattern และสตริงทดสอบ แล้วสลับ flags g, i, m, s และ u ได้ เมื่อเปิด global flag ระบบจะแสดง match ทั้งหมด
ผล match ของการทดสอบ regex แสดงอย่างไร?
ข้อความที่ match จะถูกไฮไลต์ และผลลัพธ์มีจำนวน match พร้อมตำแหน่งเริ่มต้นและสิ้นสุดของแต่ละ match คุณสามารถวางหรือล้างช่องสตริงทดสอบได้
ใช้ syntax regex แบบใด?
ใช้ syntax JavaScript RegExp ของเบราว์เซอร์ pattern ที่ไม่ถูกต้องจะแสดงเป็น error และถ้าไม่มี flag g จะพบเฉพาะ match แรก