เทคนิค

มาตรฐาน Regular Expression

เจาะลึกเทคนิคการใช้ Regular Expression พร้อมตัวอย่าง Patterns ที่ใช้บ่อย

Regex คืออะไร?

Regular Expression (Regex) เป็นลำดับของอักขระที่กำหนดรูปแบบการค้นหา ใช้สำหรับค้นหา แทนที่ และตรวจสอบข้อมูลใน text อย่างมีประสิทธิภาพ

Basic Syntax

Patternคำอธิบายตัวอย่าง
.อักขระใดๆ หนึ่งตัวa.b
^ต้นบรรทัด^Hello
$ท้ายบรรทัดWorld$
*0 ครั้งขึ้นไปa*
+1 ครั้งขึ้นไปa+
?0 หรือ 1 ครั้งa?

Character Classes

Patternคำอธิบายตัวอย่าง
[abc]a, b, หรือ c[abc]
[^abc]ไม่ใช่ a, b, c[^abc]
[a-z]a ถึง z[a-z]
\dตัวเลข (0-9)\d+
\wตัวอักษรและตัวเลข\w+
\sช่องว่าง\s+

Patterns ที่ใช้บ่อย

// อีเมล
const emailPattern = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;

// เบอร์โทรศัพท์ไทย
const phonePattern = /^0[0-9]{8,9}$/;

// URL
const urlPattern = /^https?:\/\/[\w\-]+(\.[\w\-]+)+[/#?]?.*$/;

// รหัสผ่าน (อย่างน้อย 8 ตัว)
const passwordPattern = /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d@$!%*?&]{8,}$/;

ตัวอย่างการใช้งาน

// ตรวจสอบอีเมล
function validateEmail(email) {
  const pattern = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
  return pattern.test(email);
}

// ค้นหาทุกตัวเลขในข้อความ
const text = "มี 123 และ 456";
const numbers = text.match(/\d+/g);
console.log(numbers); // ["123", "456"]

เคล็ดลับ: ใช้เครื่องมือ Regex Tester ของเราเพื่อทดสอบและ debug patterns ของคุณได้ทันที