Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

แทนที่ข้อมูลแบบไดนามิกตาม RegEx ที่ตรงกัน - JavaScript

ใช้ replace() พร้อมฟังก์ชัน callback เพื่อแทนที่ placeholder ด้วยข้อมูลจากอ็อบเจ็กต์

ตัวอย่างโค้ด

var temp = `My name is {{fullName}} I live in {{countryName}}`;
var details = {
  "fullName": "David Miller",
  "countryName": "AUS"
};
replaceName = temp.replace(
  /\{\{(.+?)\}\}/g,
  (matching, value) => details[value.trim()]
);
console.log(replaceName);

รันด้วยคำสั่ง:

node fileName.js

ชื่อไฟล์: demo256.js

ผลลัพธ์

PS C:\Users\Amit\javascript-code> node demo256.js
My name is David Miller I live in AUS

คำอธิบาย: Regex \{\{(.+?)\}\} จับข้อความระหว่าง {{ }} ฟังก์ชัน callback ใช้ค่าที่จับได้ (trim แล้ว) เป็น key ดึงค่าจากอ็อบเจ็กต์ details