ตัวทดสอบและแก้ไข Regex
ออกแบบเพื่อความเป็นส่วนตัว — ทำงานในเบราว์เซอร์ของคุณทั้งหมด
ทดสอบนิพจน์ปกติกับข้อความตัวอย่างในเบราว์เซอร์ของคุณ Toova แสดงไฮไลต์การจับคู่สด ผลลัพธ์ของ capture groups เอาต์พุตการแทนที่ และอธิบายข้อผิดพลาดทั่วไป — ทั้งหมดโดยไม่อัปโหลด regex หรืออินพุตทดสอบของคุณ
การจับคู่สดและ capture groups
พิมพ์หรือวาง regex และตัวอย่าง และ Toova ไฮไลต์ทุกการจับคู่ในข้อความขณะที่คุณพิมพ์ Hover เหนือการจับคู่เพื่อดู groups ที่จับ ทั้งที่มีหมายเลขและที่ตั้งชื่อ ดัชนีการจับคู่แสดงข้างแต่ละครั้งที่เกิดขึ้น ซึ่งช่วยเมื่อดีบัก regex ที่จับมากเกินไปหรือน้อยเกินไป สลับ flags (global, case-insensitive, multiline, sticky, unicode) และไฮไลต์อัปเดตทันที
โหมดแทนที่
สลับไปยังโหมดแทนที่และให้สตริงการแทนที่ แผงเอาต์พุตแสดงข้อความที่แปลงในเวลาจริง Capture groups พร้อมใช้งานเป็น $1, $2 และ groups ที่ตั้งชื่อเป็น ${name} นี่คือเครื่องมือที่ถูกต้องสำหรับการสร้างต้นแบบการดำเนินการค้นหาและแทนที่ก่อนรันใน codebase หรือคอลัมน์ฐานข้อมูล — ดูผลลัพธ์ก่อน จากนั้นจึงใช้ที่ที่นับ
เฉพาะเบราว์เซอร์ ไม่มีการอัปโหลด
ทุกการประเมิน regex ทำงานในเบราว์เซอร์ของคุณ Pattern และข้อความทดสอบไม่ออกจากหน้า สิ่งนี้สำคัญเมื่อคุณกำลังดีบัก regex กับบรรทัด log production ข้อความลูกค้า หรือสิ่งใดๆ ที่อ่อนไหว หน้าทำงานออฟไลน์หลังจากโหลดครั้งแรก และแท็บเครือข่ายจะว่างขณะที่คุณทดสอบ
คำถามที่พบบ่อย
- เครื่องมือนี้รองรับ regex flavor ไหน
- Regex engine ของ JavaScript ซึ่งเป็นสิ่งที่ Node.js ใช้เช่นกัน ครอบคลุมสแต็กเว็บสมัยใหม่ส่วนใหญ่ Lookbehind, groups ที่ตั้งชื่อ และ Unicode property escapes ทั้งหมดรองรับ
- Flags หมายความว่าอย่างไร
- g จับทุกครั้งที่เกิดขึ้น (ไม่เฉพาะครั้งแรก) i ไม่สนใจตัวพิมพ์ m ทำให้ ^ และ $ ตรงกับขอบเขตบรรทัด s ให้ . ตรงกับ newlines u เปิดใช้งานโหมด Unicode y ทำให้ regex sticky ที่ตำแหน่งเฉพาะ
- ดูค่า capture group ได้ไหม
- ใช่ Hover เหนือการจับคู่ใดๆ เพื่อดู groups ที่จับด้วยหมายเลขและที่ตั้งชื่อ ในโหมดแทนที่ $1, $2 และ ${name} แทนข้อความที่จับลงในเอาต์พุต
- ทำไม regex ของฉันช้าในอินพุตนี้
- ปกติคือ catastrophic backtracking — quantifiers ที่ซ้อนกันเช่น (a+)+ สามารถระเบิดแบบ exponential ในอินพุตบางตัว Toova ตั้งธง patterns ที่น่าสงสัยด้วยคำเตือนก่อนที่จะแขวนหน้า
- Regex ของฉันถูกส่งไปยังเซิร์ฟเวอร์ใดหรือไม่
- ไม่ การประเมินทำงานในเบราว์เซอร์ของคุณทั้งหมด Pattern และข้อความทดสอบไม่ออกจากหน้า และไม่มีการบันทึกทั้งคู่