เพื่อแทนที่ทุก occurrence ของสตริงใน JavaScript ใช้เมธอด replace() พร้อม regular expression ที่มี flag g (global)
<html>
<body>
<script>
var str1 = 'John loves studying. He loves Football too!';
var str2 = str1.replace(/loves/g, "likes");
document.write(str2);
</script>
</body>
</html>
คำอธิบาย
/loves/g— regex pattern พร้อม flagg(global) หมายถึงค้นหาและแทนที่ ทุกครั้งที่เจอ- ถ้าไม่ใส่ flag
gจะแทนที่ เฉพาะครั้งแรก ที่เจอเท่านั้น
วิธีอื่น (ES2021+)
// replaceAll() - ใหม่กว่า ใช้สตริงตรงๆ ไม่ต้อง regex
const str = 'John loves studying. He loves Football too!';
const result = str.replaceAll('loves', 'likes');
// "John likes studying. He likes Football too!"
replaceAll() รองรับในเบราว์เซอร์สมัยใหม่ทั้งหมด (Chrome 85+, Firefox 77+, Safari 13.1+, Edge 85+)