การใช้ replace string ใน JavaScript แบบทั้งหมด

25 July 2013 4:38 PM Programming
Untitled-6

ในภาษา JavaScript ที่เราใช้เขียนเว็บนั้น มี method ที่ใช้ในการ replace ค่าใน string จะแปลกกว่าชาวบ้านหน่อยตรงที่ หากเราใช้วิธีธรรมดาทั่วไปเหมือนที่เราใช้ในภาษาอื่นๆ มันจะแก้แค่ตัวแรกที่มันเจอใน string นั้นเท่านั้น ส่วนตัวอื่นๆ ก็ยังจะคงคำเดิม เช่น

โปรแกรมทั่วไป ผลลัพธ์ก็จะประมาณนี้

Test Replace bear or duck or dog or cat

แต่บน Javascript ดันแสดงผลออกอย่างงี้

Test Replace bear or duck and dog and cat

จะเห็นได้ว่ามันเปลี่ยนแค่ and ตัวแรกที่เจอใน String นั้นๆ แต่ตั้งแต่ตัวถัดไปดันไม่เปลี่ยนเป็น or ให้เลยไปหาวิธีแก้มาเจอที่เว็บของคุณ @Jumdee เลยเอาวิธีการมาแบ่งปันครับ โดยเจ้าตัว Method Replace() ของ Javascript รับ Parameter ได้นอกเหนือจาก String ธรรมดา คือสามารถรับเป็น Regular Expression ได้ ดังนั้นเราก็สามารถป้อนข้อมูลเป็น Regex ได้ จากปัญหาข้างต้น เราสามารถแก้ให้เป็นดังนี้ได้

เท่านี้ผลลัพธ์ก็จะออกมาตามชาวบ้านเขาละครับ