REGEXMATCH เป็นฟังก์ชันสำหรับตรวจสอบว่าข้อความตรงกับรูปแบบ Regular Expression หรือไม่ คืนค่า TRUE หรือ FALSE เหมาะสำหรับ Data Validation และ Filtering ขั้นสูง
=REGEXMATCH(text, regular_expression)
=REGEXMATCH(text, regular_expression)
| Argument | Type | Required | Default | Description |
|---|---|---|---|---|
| text | Text | Yes | ข้อความหรือเซลล์ที่ต้องการตรวจสอบ (ต้องเป็น text หากเป็นตัวเลขให้ใช้ TEXT() ห่อก่อน) | |
| regular_expression | Text | Yes | รูปแบบ Regex ที่ต้องการค้นหา (ต้องอยู่ในเครื่องหมายคำพูด) |
REGEXMATCH("081-234-5678", "^\d{3}-\d{3}-\d{4}$")=REGEXMATCH("081-234-5678", "^\d{3}-\d{3}-\d{4}$")
TRUE
REGEXMATCH("user@example.com", "^[\w.-]+@[\w.-]+\.com$")=REGEXMATCH("user@example.com", "^[\w.-]+@[\w.-]+\.com$")
TRUE
REGEXMATCH("Order #12345", "\d+")=REGEXMATCH("Order #12345", "\d+")
TRUE
REGEXMATCH("Google Sheets", "(?i)google")=REGEXMATCH("Google Sheets", "(?i)google")
TRUE
REGEXMATCH คืนค่า TRUE/FALSE (ใช้ใน IF, FILTER, Data Validation) แต่ REGEXEXTRACT ดึงข้อความจริง ๆ ออกมา เลือกใช้ตามว่าต้องการตรวจสอบหรือดึงข้อมูล
Excel 365 เพิ่งมี REGEXMATCH ให้ใช้แล้ว (Public Preview ปี 2024) ทำงานคล้าย ๆ Google Sheets แต่ถ้าใช้ Excel รุ่นเก่ากว่า (รวม Excel 2021) ต้องใช้ VBA หรือสูตร workaround
ใช้ AI ช่วย! บอก ChatGPT/Claude/Gemini ว่า “Write a regex to [สิ่งที่ต้องการ]” หรือทดสอบที่ regexr.com ซึ่งมีคำอธิบายแบบ visual
ใช้ RE2 (Google’s regex engine) คล้าย JavaScript/PCRE แต่ไม่รองรับ lookahead (?=) และ lookbehind (?<=) เพื่อความปลอดภัย
ใช่ ถ้าเซลล์มีตัวเลขจริง ๆ ต้องใช้ TEXT() ห่อ เช่น =REGEXMATCH(TEXT(A1,”0″), “\d+”)
ฟังก์ชัน REGEXMATCH ช่วยให้คุณตรวจสอบว่าข้อความในเซลล์ตรงกับรูปแบบ Regular Expression ที่กำหนดหรือไม่ ต่างจาก REGEXEXTRACT (ดึงข้อความ) ตรงที่ REGEXMATCH คืนค่าเพียง TRUE หรือ FALSE ทำให้เหมาะสำหรับใช้ใน IF, FILTER และ Data Validation
**💡 Regex Pattern พื้นฐาน:**
• `\d` = ตัวเลข 0-9 (เช่น `\d+` = ตัวเลข 1 ตัวขึ้นไป)
• `\w` = ตัวอักษร ตัวเลข และ _ (เช่น `\w+` = คำ)
• `\s` = ช่องว่าง tab newline
• `.` = อักขระใด ๆ 1 ตัว
• `+` = 1 ครั้งขึ้นไป | `*` = 0 ครั้งขึ้นไป | `?` = 0 หรือ 1 ครั้ง
• `[abc]` = a หรือ b หรือ c
• `(group)` = กลุ่มที่ต้องการ (capture group)
• `^` = ต้นข้อความ | `$` = ท้ายข้อความ
• `|` = OR (เช่น `cat|dog` = cat หรือ dog)
**🔧 Regex Engine:** Google Sheets ใช้ RE2 (Google’s regex engine) ซึ่งคล้าย JavaScript/PCRE แต่ไม่รองรับ lookahead (?=) และ lookbehind (?<=) เพื่อความปลอดภัย
**📚 เรียนรู้ Regex:**
• ทดสอบ & มองเห็น Pattern ที่ https://regexr.com/ (แนะนำสำหรับผู้เริ่มต้น)
• Tester ขั้นสูง https://regex101.com/ (เลือก RE2 flavor)
• ใช้ AI ช่วยเขียน: “Write a regex to [สิ่งที่ต้องการ]”
• ฝึกทีละรูปแบบ จากง่ายไปยาก
ส่วนตัวผม REGEXMATCH เป็นตัวช่วยที่ประหยัดเวลาเยอะเวลาต้องเช็ค Data Validation หรือ Filtering ที่ซับซ้อน ใช้ร่วมกับ FILTER ได้เลย ทำให้ Dashboard dynamic ขึ้นมา 😎