ข้ามไปยังเนื้อหา
ToolMug

ใช้ ↑ ↓ เพื่อเลื่อน, Enter เพื่อเปิด, Esc เพื่อปิด

ตัวทดสอบนิพจน์ปกติ

เขียนนิพจน์ปกติ ดูการจับคู่ทั้งหมดที่ไฮไลต์ขณะพิมพ์ ตรวจสอบกลุ่มจับภาพ และลองแทนที่ โดยใช้เอนจิน regex ของ JavaScript และรูปแบบที่ใช้เวลานานเกินไปจะหยุดแทนที่จะทำให้หน้าค้าง

ทำงานในเบราว์เซอร์ของคุณ ข้อมูลที่คุณป้อนจะไม่ถูกอัปโหลด

//g
รูปแบบที่ใช้บ่อย:
 
Contact: ada@example.com, grace.hopper@navy.mil
Servers: 10.0.0.1, 192.168.1.255
Date: 2026-09-26

วิธีใช้งาน

  1. พิมพ์รูปแบบระหว่างเครื่องหมายทับ หรือเริ่มจากหนึ่งในรูปแบบทั่วไป
  2. สลับแฟล็ก — g, i, m, s, u, y — เพื่อเปลี่ยนวิธีการจับคู่
  3. วางข้อความทดสอบของคุณ การจับคู่จะไฮไลต์และแสดงรายการพร้อมตำแหน่งและกลุ่มของพวกเขา
  4. ป้อนการแทนที่ เช่น $1 หรือ $<name> เพื่อดูตัวอย่างผลลัพธ์ของการค้นหาและแทนที่

คำอธิบายตัวเลือก

g (global)
ค้นหาการจับคู่ทั้งหมดแทนที่จะหยุดที่การจับคู่แรก รายการการจับคู่จะแสดงการจับคู่ทั้งหมดเสมอ g ส่งผลต่อการแทนที่
i (ignore case)
ตัวอักษรจับคู่โดยไม่คำนึงถึงกรณี
m (multiline)
^ และ $ จับคู่ที่จุดเริ่มต้นและสิ้นสุดของแต่ละบรรทัดแทนที่จะเป็นข้อความทั้งหมด
s (dotAll)
. ยังจับคู่การขึ้นบรรทัดใหม่
u (unicode)
ปฏิบัติต่อรูปแบบเป็นจุดรหัส Unicode ซึ่งเปิดใช้งาน \p{…} escapes คุณสมบัติและการจัดการ emoji ที่ถูกต้อง
y (sticky)
จับคู่เฉพาะตำแหน่งที่แน่นอนที่การจับคู่ก่อนหน้าจบลง

อ้างอิงอย่างรวดเร็ว

ไวยากรณ์ จับคู่
\d \w \s ตัวเลข อักขระคำ ช่องว่าง
[abc] [^abc] [a-z] หนึ่งใน ไม่มี ช่วง
* + ? {2,5} 0+ 1+ 0 หรือ 1 ระหว่าง 2 ถึง 5
*? +? Lazy — น้อยที่สุด
^ $ \b เริ่ม สิ้นสุด ขอบเขตคำ
(…) (?:…) (?<name>…) จับภาพ ไม่จับภาพ กลุ่มชื่อ
(?=…) (?!…) (?<=…) (?<!…) Lookahead negative lookahead lookbehind negative lookbehind
\p{L} \p{Script=Han} อักษรใดก็ได้ อักษรจีน (ด้วยแฟล็ก u)

ตัวอย่าง

รูปแบบ (?<user>[\w.+-]+)@(?<domain>[\w-]+(?:\.[\w-]+)+) บน ada@example.com ให้ user = ada และ domain = example.com; การแทนที่ $<domain>/$<user> ให้ example.com/ada

คำถามที่พบบ่อย

ตัวทดสอบนี้ใช้ regex flavor ใด

JavaScript (ECMAScript 2024) ตามที่ใช้งานโดยเบราว์เซอร์ของคุณ ไวยากรณ์ส่วนใหญ่ใช้ร่วมกับ PCRE, Python และ Java แต่ lookbehind, named groups และ Unicode escapes แตกต่างกันเล็กน้อยระหว่างเอนจิน ดังนั้นให้ทดสอบในภาษาที่คุณจะใช้

ทำไมมันถึงบอกว่ารูปแบบหยุดลง

รูปแบบบางอย่าง เช่น (a+)+$ บนสตริงที่ยาว a ทำให้เอนจินลองจำนวนชุดค่าผสมแบบเลขชี้กำลัง — เรียกว่า catastrophic backtracking ตัวทดสอบทำงานในเธรดพื้นหลังและหยุดหลังจาก 1.5 วินาที เขียนตัวระบุปริมาณซ้อนกันใหม่หรือใช้คลาสอักขระที่เจาะจงมากขึ้น

ฉันจะใช้กลุ่มจับภาพในการแทนที่ได้อย่างไร

ใช้ $1, $2… สำหรับกลุ่มที่มีหมายเลข $<name> สำหรับกลุ่มที่มีชื่อ $& สำหรับการจับคู่ทั้งหมด และ $$ สำหรับเครื่องหมายดอลลาร์ตามตัวอักษร

ข้อความของฉันถูกส่งไปที่ไหน

ไม่มี การจับคู่ทำงานในเวิร์กเกอร์เว็บในเบราว์เซอร์ของคุณ ดังนั้นบันทึกและข้อมูลที่คุณทดสอบจะอยู่บนอุปกรณ์ของคุณ

ความเป็นส่วนตัว

เครื่องมือนี้ทำงานในเบราว์เซอร์ของคุณทั้งหมด ไฟล์และข้อความของคุณได้รับการประมวลผลบนอุปกรณ์ของคุณ และจะไม่ถูกอัปโหลดไปยังเซิร์ฟเวอร์ของเรา

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