REGEXREPLACE เป็นฟังก์ชันสำหรับค้นหาและแทนที่ข้อความด้วยรูปแบบ Regular Expression เหมาะสำหรับการจัดรูปแบบข้อมูลและ Data Cleaning ขั้นสูง
=REGEXREPLACE(text, regular_expression, replacement)
=REGEXREPLACE(text, regular_expression, replacement)
| Argument | Type | Required | Default | Description |
|---|---|---|---|---|
| text | Text | Yes | ข้อความหรือเซลล์ที่ต้องการค้นหาและแทนที่ | |
| regular_expression | Text | Yes | รูปแบบ Regex ที่ต้องการค้นหา (ต้องอยู่ในเครื่องหมายคำพูด) เช่น “\d+” สำหรับตัวเลข | |
| replacement | Text | Yes | ข้อความที่ต้องการแทนที่ สามารถใช้ $0 (ทั้งหมด), $1, $2 (capture group) หรือ “” (ลบ) |
REGEXREPLACE("0-2345-6789", "-", "")=REGEXREPLACE("0-2345-6789", "-", "")
0234567890
REGEXREPLACE("0234567890", "(\d{3})(\d{3})(\d{4})", "$1-$2-$3")=REGEXREPLACE("0234567890", "(\d{3})(\d{3})(\d{4})", "$1-$2-$3")
023-456-7890
REGEXREPLACE("aabbccdd", "(.)\1", "$1")=REGEXREPLACE("aabbccdd", "(.)\1", "$1")
abcd
REGEXREPLACE("2025-12-23", "(\d{4})-(\d{2})-(\d{2})", "$3/$2/$1")=REGEXREPLACE("2025-12-23", "(\d{4})-(\d{2})-(\d{2})", "$3/$2/$1")
23/12/2025
Excel 365 เพิ่งมีฟังก์ชัน REGEXREPLACE ให้ใช้แล้ว (Public Preview ปี 2024) ทำงานเกือบเหมือน Google Sheets แต่ถ้าใช้ Excel รุ่นเก่ากว่า ต้องใช้ VBA หรือ Python in Excel ในการแทนที่
SUBSTITUTE ค้นหาข้อความตรง ๆ ส่วน REGEXREPLACE ใช้รูปแบบ (regex) ที่ยืดหยุ่นกว่า เช่น ค้นหาตัวเลขทั้งหมด ไม่ว่าจะเป็นตัวไหน
ใช้ AI ช่วย! บอก ChatGPT/Claude/Gemini ว่า “Write a regex to [สิ่งที่ต้องการ]” หรือทดสอบที่ regexr.com ซึ่งมีคำอธิบายแบบ visual ป็นทดลองไป
ใช้ RE2 (Google’s regex engine) คล้าย JavaScript/PCRE แต่ไม่รองรับ lookahead (?=) และ lookbehind (?<=) เพื่อความปลอดภัยและการทำงานที่ถูกต้อง
ฟังก์ชัน REGEXREPLACE ช่วยให้คุณค้นหาส่วนหนึ่งของข้อความและแทนที่ด้วยข้อความใหม่ โดยใช้รูปแบบ Regular Expression (Regex) ที่มีความยืดหยุ่นสูง เหมาะสำหรับงาน Data Cleaning ที่ซับซ้อน เช่น นำหน้าบัญชี ลบสัญลักษณ์พิเศษ หรือจัดรูปแบบเบอร์โทรศัพท์
ต่างจาก REGEXEXTRACT ที่ดึงข้อมูลเอา REGEXREPLACE จะแทนที่ส่วนที่ตรงกับรูปแบบ และสามารถใช้ backreferences ($1, $2) เพื่ออ้างอิงกลุ่มที่ค้นเจอได้
**💡 Regex Pattern พื้นฐาน:**
• `\d` = ตัวเลข 0-9 (เช่น `\d+` = ตัวเลข 1 ตัวขึ้นไป)
• `.` = อักขระใด ๆ 1 ตัว
• `+` = 1 ครั้งขึ้นไป | `*` = 0 ครั้งขึ้นไป | `?` = 0 หรือ 1 ครั้ง
• `[abc]` = a หรือ b หรือ c | `[a-z]` = a ถึง z
• `()` = กลุ่มที่ต้องการเก็บ (capture group) ใช้อ้างอิงใน replacement
• `^` = ต้นข้อความ | `$` = ท้ายข้อความ
• `\s` = space/tab/newline | `\w` = ตัวอักษร/ตัวเลข/underscore
**🔧 Regex Engine:** Google Sheets ใช้ RE2 (Google’s regex engine) ซึ่งคล้าย JavaScript/PCRE แต่ปลอดภัยกว่า โดยไม่รองรับ lookahead (?=) และ lookbehind (?<=)
**📚 เรียนรู้ Regex:**
• ทดสอบ pattern ที่ https://regexr.com/ (มี visual guide) หรือ https://regex101.com/ (advanced)
• ใช้ AI ช่วยเขียน: “Write a regex to [สิ่งที่ต้องการ]” ใน ChatGPT/Claude/Gemini
• ฝึกทีละรูปแบบ จากง่ายไปยาก ในการใช้งานจริง
ส่วนตัวผม REGEXREPLACE เป็นฟังก์ชันที่ประหยัดเวลาสุด ๆ เวลาต้องจัดรูปแบบข้อมูลจำนวนมากหรือลบสัญลักษณ์พิเศษ ทำให้ Data Cleaning ของผมเร็วกว่าเดิม 10-20 เท่า และเมื่อรวมกับ ARRAYFORMULA ยิ่งชั่วร้ายไปเลย 😎