Thứ ba, 27/10/2020 | 00:00 GMT+7

Cách thay thế tất cả các phiên bản của một chuỗi trong JavaScript

Thay thế văn bản trong chuỗi là một nhiệm vụ phổ biến trong JavaScript. Trong bài viết này, bạn sẽ xem xét việc sử dụng replace và biểu thức chính quy để thay thế văn bản.

Thay thế một trường hợp duy nhất

Thông thường, hàm String replace() của JavaScript chỉ thay thế version đầu tiên mà nó tìm thấy trong một chuỗi:

const myMessage = 'this is the sentence to end all sentences'; const newMessage = myMessage.replace('sentence', 'message'); console.log(newMessage); // this is the message to end all sentences 

Trong ví dụ này, chỉ có trường hợp đầu tiên của sentence được thay thế.

Thay thế nhiều trường hợp

Nếu bạn muốn JavaScript thay thế tất cả các version , bạn sẽ phải sử dụng một biểu thức chính quy bằng cách sử dụng toán tử /g :

const myMessage = 'this is the sentence to end all sentences'; const newMessage = myMessage.replace(/sentence/g, 'message'); console.log(newMessage); // this is the message to end all messages 

Lần này cả hai trường hợp đều được thay đổi.

Ngoài việc sử dụng nội tuyến /g , bạn có thể sử dụng hàm khởi tạo của đối tượng RegExp :

const myMessage = 'this is the sentence to end all sentences'; const newMessage = myMessage.replace(new RegExp('sentence', 'g'), 'message'); console.log(newMessage); // this is the message to end all messages``` 

Thay thế các ký tự đặc biệt

Để thay thế các ký tự đặc biệt như -/\^$*+?.()|[]{}) Ta cần sử dụng dấu gạch chéo ngược để loại bỏ chúng.

Đây là một ví dụ. Với chuỗi this\-is\-my\-url , hãy thay thế tất cả các dấu gạch ngang thoát ra ( \- ) bằng một dấu gạch ngang ( - ) không thoát.

Bạn có thể làm điều này với replace() :

const myUrl = 'this\-is\-my\-url'; const newUrl = myMessage.replace(/\\-/g, '-'); console.log(newUrl); // this-is-my-url 

Ngoài ra, hãy sử dụng new Regexp() :

const myUrl = 'this\-is\-my\-url'; const newUrl = myUrl.replace(new RegExp('\-', 'g'), '-'); console.log(newUrl); // this-is-my-url 

Trong ví dụ thứ hai này, bạn không cần phải sử dụng dấu gạch chéo ngược để thoát khỏi dấu gạch chéo ngược.

Kết luận

Trong bài viết này, bạn đã biết cách thay thế các trường hợp đơn lẻ, nhiều trường hợp và cách xử lý chuỗi bằng các ký tự đặc biệt.


Tags:

Các tin trước

Các đối tượng nhân bản sâu trong JavaScript (Và cách nó hoạt động) 2020-10-27
Các từ khóa dành riêng cho JavaScript 2020-10-27
Hiểu các module và các câu lệnh nhập và xuất trong JavaScript 2020-10-23
Xây dựng Đồng hồ đếm ngược trong JavaScript 2020-10-21
Giới thiệu về Thị giác máy tính trong JavaScript sử dụng OpenCV.js 2020-10-20
Thêm, loại bỏ & chuyển đổi lớp với classList trong JavaScript 2020-10-13
Cách Chèn Javascript vào HTML bằng Thẻ script 2020-09-23
Mẫu thiết kế module trong JavaScript 2020-09-21
Mẫu thiết kế trình quan sát trong JavaScript 2020-09-21
Mẫu thiết kế Singleton trong JavaScript 2020-09-21