นิพจน์ทั่วไป

//g

สตริงทดสอบ

รูปแบบทั่วไป

สูตรโกง Regex

อักขระ

. อักขระใดก็ได้ (ยกเว้นขึ้นบรรทัดใหม่)
\d ตัวเลข [0-9]
\w อักขระคำ [a-zA-Z0-9_]
\s ช่องว่าง
\b ขอบเขตคำ
[abc] คลาสอักขระ
[^abc] คลาสปฏิเสธ

ตัวระบุจำนวน

* 0 หรือมากกว่า
+ 1 หรือมากกว่า
? 0 หรือ 1
{n} ตรง n ครั้ง
{n,m} ระหว่าง n ถึง m
*? ขี้เกียจ (non-greedy)

กลุ่มและจุดยึด

(abc) กลุ่มจับ
(?:abc) กลุ่มไม่จับ
(?<name>abc) กลุ่มที่มีชื่อ
a|b สลับ (หรือ)
^ จุดเริ่มต้นของสตริง/บรรทัด
$ จุดสิ้นสุดของสตริง/บรรทัด

เกี่ยวกับนิพจน์ทั่วไป

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

ไฮไลต์การจับคู่แบบเรียลไทม์
แสดงกลุ่มจับ
ค้นหาและแทนที่พร้อม backreference
ประมวลผลฝั่งไคลเอนต์ 100%

คู่มือฉบับสมบูรณ์เกี่ยวกับนิพจน์ทั่วไป

ตัวทดสอบ Regex ออนไลน์ฟรี

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

นิพจน์ทั่วไปคืออะไร?

นิพจน์ทั่วไป (regex หรือ regexp) คือลำดับอักขระที่กำหนดรูปแบบการค้นหา พัฒนาขึ้นครั้งแรกในทฤษฎีภาษาทางการในทศวรรษ 1950 regex กลายเป็นเครื่องมือที่ขาดไม่ได้ในการคอมพิวเตอร์ ใช้ในการจับคู่ ค้นหา ดึง และแทนที่ข้อความตามรูปแบบแทนที่จะเป็นสตริงตัวอักษร

For example, the pattern \b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b matches email addresses, while ^\d{4}-\d{2}-\d{2}$ validates dates in YYYY-MM-DD format.

องค์ประกอบไวยากรณ์ Regex

🔤 คลาสอักขระ

  • . — จับคู่อักขระใดก็ได้ (ยกเว้นขึ้นบรรทัดใหม่)
  • \d — จับคู่ตัวเลขใดก็ได้ [0-9]
  • \w — จับคู่อักขระคำ [a-zA-Z0-9_]
  • \s — จับคู่ช่องว่าง (เว้นวรรค แท็บ ขึ้นบรรทัดใหม่)
  • [abc] — จับคู่อักขระใดก็ได้ในชุด
  • [^abc] — จับคู่อักขระใดก็ได้ที่ไม่อยู่ในชุด

🔢 ตัวระบุจำนวน

  • * — ศูนย์ครั้งหรือมากกว่า
  • + — หนึ่งครั้งหรือมากกว่า
  • ? — ศูนย์หรือหนึ่งครั้ง
  • {n} — ตรง n ครั้ง
  • {n,m} — ระหว่าง n ถึง m ครั้ง
  • *? / +? — เวอร์ชันขี้เกียจ (non-greedy)

📎 กลุ่มและการอ้างอิง

  • (abc) — กลุ่มจับ
  • (?:abc) — กลุ่มไม่จับ
  • (?<name>abc) — กลุ่มจับที่มีชื่อ
  • \1 — การอ้างอิงย้อนกลับไปกลุ่ม 1
  • a|b — สลับ (a หรือ b)

⚓ จุดยึดและขอบเขต

  • ^ — จุดเริ่มต้นของสตริง (หรือบรรทัดด้วยแฟลก m)
  • $ — จุดสิ้นสุดของสตริง (หรือบรรทัดด้วยแฟลก m)
  • \b — ขอบเขตคำ
  • \B — ไม่ใช่ขอบเขตคำ
  • (?=abc) — Lookahead เชิงบวก
  • (?!abc) — Lookahead เชิงลบ

แฟลก Regex ของ JavaScript

แฟลกชื่อคำอธิบาย
gGlobalค้นหาทุกการจับคู่ ไม่ใช่แค่รายการแรก
iไม่สนใจตัวพิมพ์จับคู่โดยไม่สนใจตัวพิมพ์เล็กใหญ่
mหลายบรรทัด^ และ $ จับคู่จุดเริ่มต้น/สิ้นสุดของแต่ละบรรทัด
sDotall (บรรทัดเดียว). จับคู่อักขระขึ้นบรรทัดใหม่ด้วย
uUnicodeเปิดใช้การจับคู่ Unicode เต็มรูปแบบ

วิธีใช้ตัวทดสอบ Regex

  1. ใส่รูปแบบ: พิมพ์นิพจน์ทั่วไปในช่องป้อนรูปแบบ เครื่องมือใช้ไวยากรณ์ regex ของ JavaScript
  2. ตั้งค่าแฟลก: สลับแฟลกเช่น global (g), ไม่สนใจตัวพิมพ์ (i), หลายบรรทัด (m), dotall (s) และ unicode (u) เพื่อควบคุมพฤติกรรมการจับคู่
  3. เพิ่มข้อความทดสอบ: พิมพ์หรือวางข้อความในพื้นที่สตริงทดสอบ หรือโหลดข้อความตัวอย่างในตัว
  4. ดูการจับคู่: การจับคู่จะถูกไฮไลต์แบบเรียลไทม์ ผลลัพธ์รายละเอียดแสดงแต่ละการจับคู่พร้อมตำแหน่ง ความยาว และกลุ่มจับ
  5. โหมดแทนที่: เปิดโหมดแทนที่เพื่อค้นหาและแทนที่ด้วย regex พร้อมรองรับ backreference ($1, $2 เป็นต้น)
  6. ใช้รูปแบบสำเร็จรูป: คลิกรูปแบบทั่วไปเช่น อีเมล URL ที่อยู่ IP หรือโทรศัพท์เพื่อโหลดรูปแบบที่ทดสอบแล้ว

กรณีการใช้งาน Regex ทั่วไป

การตรวจสอบฟอร์ม: Regex ใช้กันอย่างแพร่หลายในการตรวจสอบข้อมูลที่ผู้ใช้ป้อนในฟอร์มเว็บ — ที่อยู่อีเมล หมายเลขโทรศัพท์ รหัสไปรษณีย์ หมายเลขบัตรเครดิต วันที่ และอื่นๆ รูปแบบการตรวจสอบที่เหมาะสมป้องกันข้อมูลที่ผิดรูปแบบเข้าสู่ระบบ

การวิเคราะห์ล็อก: ผู้ดูแลระบบและวิศวกร DevOps ใช้ regex เพื่อแยกวิเคราะห์และกรองไฟล์ล็อก รูปแบบสามารถดึงเวลา รหัสข้อผิดพลาด ที่อยู่ IP และเส้นทางคำขอจากชุดข้อมูลล็อกขนาดใหญ่

การดึงข้อมูลและการสครัปเว็บ: Regex ช่วยดึงข้อมูลที่มีโครงสร้างจากข้อความที่ไม่มีโครงสร้าง — ดึงราคาจากหน้าสินค้า ดึงลิงก์จาก HTML หรือแยกวิเคราะห์ไฟล์ CSV ที่มีรูปแบบไม่สม่ำเสมอ

ค้นหาและแทนที่ในโปรแกรมแก้ไขโค้ด: โปรแกรมแก้ไขโค้ดส่วนใหญ่ (VS Code, Sublime Text, IntelliJ) รองรับ regex ในการค้นหาและแทนที่ ช่วยให้ทำการรีแฟคเตอร์ที่ทรงพลังเช่นเปลี่ยนชื่อตัวแปร เปลี่ยนลายเซ็นฟังก์ชัน หรือจัดรูปแบบโค้ดใหม่

การกำหนดเส้นทาง URL: เฟรมเวิร์กเว็บเช่น Express.js, Django และ Rails ใช้รูปแบบ regex เพื่อกำหนดเส้นทาง URL จับคู่เส้นทางคำขอกับแอ็กชันของคอนโทรลเลอร์พร้อมการดึงพารามิเตอร์

การทำความสะอาดข้อมูล: ทำความสะอาดและทำให้ชุดข้อมูลที่ยุ่งเหยิงเป็นมาตรฐานโดยลบช่องว่างเกิน ทำให้รูปแบบหมายเลขโทรศัพท์เป็นมาตรฐาน ลอกแท็ก HTML หรือแปลงรูปแบบวันที่ด้วยการแทนที่ regex

ทำไมต้องใช้ตัวทดสอบ Regex ของเรา?

ข้อเสนอแนะภาพทันที: การจับคู่จะถูกไฮไลต์ในสตริงทดสอบขณะที่คุณพิมพ์รูปแบบ ไม่ต้องส่งฟอร์มหรือคลิกปุ่ม

รายละเอียดการจับคู่ครบถ้วน: ดูทุกการจับคู่พร้อมตำแหน่ง ความยาว กลุ่มจับ และกลุ่มที่มีชื่อ — ทั้งหมดในอินเทอร์เฟซที่สะอาดและเป็นระเบียบ

โหมดแทนที่: ทดสอบการค้นหาและแทนที่พร้อมรองรับ backreference ($1, $2, $& เป็นต้น) เต็มรูปแบบก่อนนำไปใช้ในโค้ดของคุณ

ไลบรารีรูปแบบในตัว: โหลดรูปแบบทั่วไปสำหรับอีเมล URL ที่อยู่ IP วันที่ สีเลขฐาน 16 แท็ก HTML และหมายเลขโทรศัพท์ได้อย่างรวดเร็ว

สูตรโกง: คู่มืออ้างอิง regex ที่ครอบคลุมอยู่ในเครื่องมือ คุณไม่ต้องออกจากหน้านี้

ความเป็นส่วนตัว 100%: การประมวลผล regex ทั้งหมดเกิดขึ้นในเบราว์เซอร์ของคุณ ไม่มีข้อมูลถูกส่งไปยังเซิร์ฟเวอร์ใดๆ รูปแบบและสตริงทดสอบของคุณยังคงเป็นส่วนตัวอย่างสมบูรณ์

เหมาะสำหรับ

  • นักพัฒนาเว็บตรวจสอบฟอร์ม
  • นักพัฒนาแบ็กเอนด์แยกวิเคราะห์ข้อมูล
  • วิศวกร DevOps วิเคราะห์ล็อก
  • นักวิทยาศาสตร์ข้อมูลทำความสะอาดชุดข้อมูล
  • นักทดสอบ QA เขียนรูปแบบทดสอบ
  • นักศึกษาเรียนรู้ regex
  • ผู้ดูแลระบบกรองล็อก
  • นักวิเคราะห์ความปลอดภัยตรวจจับรูปแบบ
  • บรรณาธิการเนื้อหาทำการเปลี่ยนข้อความจำนวนมาก
  • นักพัฒนา API ตรวจสอบ payload
  • ผู้เชี่ยวชาญ SEO แยกวิเคราะห์ URL
  • ทุกคนที่ทำงานกับรูปแบบข้อความ

🔒 รับประกันความเป็นส่วนตัว 100%

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