Handytool
สำหรับนักพัฒนาฟรีทำงานในเครื่อง

Regex tester

ทดสอบ JavaScript regular expressions กับข้อความใดๆ — ดูผลลัพธ์ที่ตรงกัน capture groups และการแทนที่แบบสดในเบราว์เซอร์ของคุณ

//g
Flags
ข้อความทดสอบ
ผลลัพธ์ที่ตรงกัน · 0 match(es)
ผลลัพธ์การแทนที่

เกี่ยวกับ Regex tester

Regex tester ของ Handytool ช่วยให้คุณสร้างและดีบั๊ก JavaScript regular expressions กับข้อความทดสอบแบบเรียลไทม์ สลับ flags ทุกตัว (g, i, m, s, y, u) ดูตัวเลขใจแหน่งของ capture groups สำหรับแต่ละผลลัพธ์ และลองแม่แบบการแทนที่พร้อมกัน Pattern จะถูกประเมินโดย RegExp engine ของเบราว์เซอร์ของคุณ ดังนั้นสิ่งที่คุณเห็นที่นี่จึงตรงกับสิ่งที่ code ของคุณจะทำในสภาพแวดล้อมจริง

คุณสมบัติของ Regex tester

  • 01

    Live matches และ capture groups

    ทุก keystroke จะรัน pattern อีกครั้ง แต่ละผลลัพธ์จะแสดงตำแหน่งในอินพุตบวกกับ capture groups ทั้งหมด เพื่อให้คุณยืนยันโครงสร้างขณะปรับแต่ง expression

  • 02

    JavaScript flags ทั้งหมด

    สลับ g, i, m, s, y และ u ทีละตัว รวมถึง sticky และ unicode flags เพื่อให้คุณลองได้ว่า application code ของคุณใช้อะไร

  • 03

    Replacement preview

    พิมพ์ replacement string ด้วย $1, $2, $& และอื่นๆ เพื่อดูผลลัพธ์การแทนที่อัปเดตแบบสด — มีประโยชน์สำหรับการแก้ไขข้อความหรือ sanity-check transform ที่ซับซ้อน

คำถามที่พบบ่อยของ Regex tester

Regex flavor ใดที่ tool นี้ใช้?
JavaScript (ECMAScript) Patterns ถูกประเมินโดย RegExp engine ของเบราว์เซอร์ ดังนั้น behavior จึงตรงกับ Node.js และเบราว์เซอร์現代ใดๆ รองรับ lookbehinds, named groups และ Unicode property escapes (\p{…} ด้วย u flag)
Pattern หรือ test string ของฉันออกจากหน้านี้หรือไม่?
ไม่ ทุกอย่างทำงานเป็นแบบท้องถิ่นในเบราว์เซอร์ของคุณ — ไม่มีการร้องขอเครือข่ายเมื่อคุณพิมพ์ pattern, เปลี่ยน flags หรือ preview replacement
ฉันจะใช้ capture groups ในช่อง replacement ได้อย่างไร?
ใช้ $1, $2, … เพื่ออ้างอิง numbered capture groups, $& สำหรับ whole match และ $$ เพื่อแทรก literal $ Preview ของ replacement จะอัปเดตแบบสดเมื่อคุณเปลี่ยน pattern หรือ template
ทำไม regex ของฉันจึงไม่ตรงกับข้ามบรรทัด?
โดยค่าเริ่มต้น dot (.) ไม่ตรงกับอักขระ newline เปิดใช้งาน s (dot-all) flag หรือใช้ [\s\S] เพื่อตรงกับอักขระใดๆ รวม newlines
สิ่งนี้ใช้ได้กับ Python หรือ PCRE patterns หรือไม่?
Engine คือ JavaScript ดังนั้น patterns พื้นฐานส่วนใหญ่มีลักษณะการทำงานเหมือนกัน แต่คุณสมบัติเช่น (?P<name>…) named groups (Python) หรือ possessive quantifiers (PCRE) ไม่รองรับ ใช้ JS syntax: (?<name>…) สำหรับ named groups

เครื่องมือที่เกี่ยวข้อง

สำหรับนักพัฒนา

สำรวจเครื่องมืออื่น ๆ

เครื่องมือทั้งหมด