REGEXMATCH เป็นฟังก์ชันสำหรับตรวจสอบว่าข้อความตรงกับรูปแบบ Regular Expression หรือไม่ คืนค่า TRUE หรือ FALSE เหมาะสำหรับ Data Validation และ Filtering ขั้นสูง
| อาร์กิวเมนต์ | ชนิด | คำอธิบาย |
|---|---|---|
| text | Text | ข้อความหรือเซลล์ที่ต้องการตรวจสอบ (ต้องเป็น text หากเป็นตัวเลขให้ใช้ TEXT() ห่อก่อน) |
| regular_expression | Text | รูปแบบ Regex ที่ต้องการค้นหา (ต้องอยู่ในเครื่องหมายคำพูด) |
ฟังก์ชัน 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 ขึ้นมา 😎
^\d{3}-\d{3}-\d{4}$ = ตรวจสอบเบอร์โทรที่มี format XXX-XXX-XXXX ตั้งแต่ต้นถึงท้าย
[\w.-]+ = อักขระ ตัวเลข จุด หรือ dash ซ้ำ ๆ ตามด้วย @ และ โดเมน
\d+ = ตัวเลข 1 ตัวขึ้นไป (ไม่จำเป็นต้องเป็นทั้งข้อความ แค่มีตัวเลขก็พอ)
(?i) = ตัวเลือกสำหรับตรวจสอบแบบไม่สนใจ upper/lower case
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 จัดกลุ่มตามหมวด · ชี้ที่ชื่อใดชื่อหนึ่ง แล้วฟังก์ชันที่ใช้คู่กันจะมีจุดทอง
REGEXEXTRACT เป็นฟังก์ชันสำหรับดึงข้อความย่อย (Substring) ที่ตรงกับรูปแบบ Regular Expression ที่กำหนด เหมาะสำหรับการทำ Data Cleaning ขั้นสูงที่ฟังก์ชันจัดการข้อความปกติทำไม่ได้
REGEXREPLACE เป็นฟังก์ชันสำหรับค้นหาและแทนที่ข้อความด้วยรูปแบบ Regular Expression เหมาะสำหรับการจัดรูปแบบข้อมูลและ Data Cleaning ขั้นสูง
FILTER กรองข้อมูลจาก Range แล้วแสดงเฉพาะแถว/คอลัมน์ที่ตรงเงื่อนไข รองรับหลายเงื่อนไข (AND/OR) และอัปเดตผลลัพธ์แบบ Real-time เมื่อข้อมูลต้นทางเปลี่ยน ทำให้เหมาะกับการสร้างรายงานไดนามิก
QUERY ใช้ภาษา SQL-like (Google Visualization API Query Language) ในการจัดการข้อมูลจาก Range ที่กำหนด รองรับ 9 clauses ตามลำดับ: SELECT, WHERE, GROUP BY, PIVOT, ORDER BY, LIMIT, OFFSET, LABEL, FORMAT พร้อม Aggregate Functions (SUM, COUNT, AVG, MIN, MAX) และ Scalar Functions สำหรับวันที่และข้อความ ทำให้สามารถกรอง จัดเรียง และสรุปข้อมูลได้แบบ Dynamic ด้วยสูตรเดียว เหมาะสำหรับการสร้างรายงานและ Dashboard ที่ซับซ้อน
ยังไม่มีบทความที่เกี่ยวข้องกับฟังก์ชันนี้
Comments
อีเมลของคุณจะไม่ถูกเผยแพร่