Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

วิธีการแทนที่อักขระใด ๆ ภายในสตริงด้วย JavaScript

เรียนรู้วิธีแทนที่อักขระใดๆ ใน (สตริง) ด้วย JavaScript โดยใช้นิพจน์ทั่วไป (RegEx) และ replace() วิธีการ

สมมติว่าคุณมีบล็อกข้อความและคุณตั้งใจจะใช้ em dash (—) แต่คุณใช้ยัติภังค์ (-):

const textBlock =
  "When you’re typing fast it’s normal to make a few spelling mistakes here and there - it just means you’re human."

โชคดีที่เราสามารถแก้ไขปัญหานี้ด้วย JavaScript โดยใช้นิพจน์ทั่วไปและ replace() วิธีการ:

const textBlockCorrected = textBlock.replace(/-/g, "—")

console.log(textBlockCorrected)
// "When you’re typing fast it’s normal to make a few spelling mistakes here and there — it just means you’re human."

มันดูเหมือนกันไหม? เชื่อฉันสิ มันไม่ใช่ ดูใกล้ๆ หรือลองพิมพ์ผลลัพธ์ของ textBlock และ textBlockCorrected ที่ช่วยให้มองเห็นความแตกต่างได้ง่ายขึ้น:

console.log(textBlock)
//"When you’re typing fast it’s normal to make a few spelling mistakes here and there - it just means you’re human."

console.log(textBlockCorrected)
// "When you’re typing fast it’s normal to make a few spelling mistakes here and there — it just means you’re human."

หมายเหตุ:ในการพิมพ์ ง่ายกว่ามากในการบอกความแตกต่างระหว่างตัวอักษรและสัญลักษณ์ เมื่อแบบอักษรที่ใช้ไม่ใช่แบบโมโนไทป์เหมือนกับที่เราใช้สำหรับตัวอย่างโค้ด (แบบอักษรที่ชื่อว่า เมนโล ). แต่ฉันจะบันทึกรายละเอียดเกี่ยวกับ em, en และยัติภังค์สำหรับบทแนะนำเกี่ยวกับการพิมพ์