
Trong bài đăng này, ban sẽ tìm hiểu cách thay thế tất cả các lần xuất hiện chuỗi trong JavaScript bằng cách tách và nối một chuỗi, string.replace() kết hợp với biểu thức chính quy toàn cực và string.replaceAll().
Tách và nối một mảng
Nếu google cách thay thế tất cả các lần xuất hiện chuỗi trong JavaScript, cách tiếp cận đầu tiền bạn có thể tìm thấy là sử dụng một mảng trung gian:
Đây là cách hoạt động
1.Chia string
thành pieces
chuỗi search
:
2.Sau đó nối các mảnh đặt replace
chuỗi ở giữa:
Ví dụ: hãy thay thế tất cả khoảng trắng ' '
bằng dấu gạch nối '-'
trong 'duck duck go'
chuỗi:
'duck duck go'.split(' ')
chia chuỗi thành nhiều phần: ['duck', 'duck', 'go']
.
Sau đó, các mảnh ['duck', 'duck', 'go'].join('-')
được nối lại bằng cách chèn '-'
vào giữa chúng, tạo ra chuỗi 'duck-duck-go'
.
Đây là một hàm trợ giúp tổng quát sử dụng phương pháp chia tách và nối:
JS Mở bản demo.
Cách tiếp cận này yêu cầu chuyển đổi chuỗi thành một mảng và sau đó quay lại thành chuỗi. Hãy tiếp tục tìm kiếm những lựa chọn thay thế tốt hơn.
Thay thế () bằng biểu tượng thức chính quy toàn cục
Phương thức chuỗi string.replace(regExpSearch, replaceWith)
tìmkiếm và thay thế các lần xuất hiện của biểu thức chính quy regExpSearch
bằng replaceWith
chuỗi.
Để làm cho phương thức replace()
thay thế tất cả các lần xuất hiện của mẫu - bạn phải bật cờ chung trên biểu thức chính quy:
- Nối
g
vào cuối biểu thức chính quy theo nghĩa đen:/search/g
- Hoặc khi sử dụng hàm tạo biểu thức chính quy, hãy thêm
'g'
vào đối số thứ hai:new RegExp('search', 'g')
Hãy thay thế tất cả các lần xuất hiện của ' '
bằng '-'
:
Biểu thức chính quy /\s/g
(lưu ý g
cờ chung) khớp với khoảng trắng ' '
.
'duck duck go'.replace(/\s/g, '-')
thay thế tất cả các kết quả khớp /\s/g
bằng '-'
, dẫn đến 'duck-duck-go'
.
Bạn có thể dễ dàng thực hiện thay thế không phân biệt chữ hoa chữ thường bằng cách thêm i
cờ vào biểu thức chính quy:
Biểu thức chính quy /\s/g
(lưu ý g
cờ chung) khớp với khoảng trắng ' '
.
'duck duck go'.replace(/\s/g, '-')
thay thế tất cả các kết quả khớp /\s/g
bằng '-'
, dẫn đến 'duck-duck-go'
.
Bạn có thể dễ dàng thực hiện thay thế không phân biệt chữ hoa chữ thường bằng cách thêm i
cờ vào biểu thức chính quy:
Biểu thức chính quy /duck/gi
thực hiện tìm kiếm không phân biệt chữ hoa chữ thường (ghi chú i
và g
cờ). /duck/gi
trận đấu 'DUCK'
, cũng như 'Duck'
.
Việc gọi 'DUCK Duck go'.replace(/duck/gi, 'goose')
sẽ thay thế tất cả kết quả khớp của /duck/gi
chuỗi con bằng 'goose'
.
Biểu thức chính quy từ một chuỗi
Khi biểu thức chính quy được tạo từ một chuỗi, bạn phải thoát khỏi các ký tự - [ ] / { } ( ) * + ? . \ ^ $ |
vì chúng có ý nghĩa đặc biệt trong biểu thức chính quy.
Vì vậy, các ký tự đặc biệt là một vấn đề khi bạn muốn thực hiện thay thế mọi thao tác. Đây là một ví dụ:
Đoạn mã trên cố gắng chuyển chuỗi tìm kiếm '+'
thành một biểu thức chính quy. Nhưng '+'
là một biểu thức chính quy không hợp lệ nên sẽ SyntaxError: Invalid regular expression: /+/
bị loại bỏ.
Thoát khỏi nhân vật '\\+'
sẽ giải quyết được vấn đề. JS thử bản demo cố định
Thay thế() bằng một chuỗi
Nếu đối số đầu tiên search
của string.replace(search, replaceWith)
là một chuỗi thì phương thức này chỉ thay thế lần xuất hiện đầu tiên của search
:
'duck duck go'.replace(' ', '-')
chỉ thay thế sự xuất hiện đầu tiên của một khoảng trắng.
Phương thức thay thếAll()
Cuối cùng, phương thức này string.replaceAll(search, replaceWith)
thay thế tất cả sự xuất hiện của search
chuỗi bằng replaceWith
.
Hãy thay thế tất cả các lần xuất hiện của ' '
bằng '-'
:
'duck duck go'.replaceAll(' ', '-')
thay thế tất cả các lần xuất hiện của ' '
chuỗi bằng '-'
.
string.replaceAll(search, replaceWith)
là cách tốt nhất để thay thế tất cả các lần xuất hiện chuỗi trong một chuỗi
Lưu ý rằng trình duyệt hỗ trợ phương pháp này hiện bị hạn chế và bạn có thể yêu cầu polyfill .
Sự khác biệt giữa thay thếAll() và thay thế()
Các phương thức chuỗi replaceAll(search, replaceWith)
và replace(search, replaceWith)
cách hoạt động đều giống nhau, ngoại trừ 2 điều:
- Nếu
search
đối số là một chuỗi,replaceAll()
thay thế tất cả các lần xuất hiệnsearch
bằng ,replaceWith
trong khi chỉreplace()
thay thế lần xuất hiện đầu tiên - Nếu
search
đối số là một biểu thức chính quy không toàn cục thì sẽreplaceAll()
đưa ra mộtTypeError
ngoại lệ.

Devwork là Nền tảng TUYỂN DỤNG IT CẤP TỐC với mô hình kết nối Nhà tuyển dụng với mạng lưới hơn 30.000 headhunter tuyển dụng ở khắp mọi nơi.Với hơn 1800 doanh nghiệp IT tin dùng Devwork để :
Tag Cloud:
Tác giả: quyenntt
Việc làm tại Devwork
Bài viết liên quan

Cách quay màn hình máy tính Win 7 chi tiết từ A-Z
Bạn đang dùng máy tính Win 7 và cần quay lại màn hình để hướng dẫn, lưu lại thao tác hoặc chia sẻ với người khác? Dù không có sẵn tính năng quay như Windows 10 hay 11, nhưng cách quay màn hình máy tính Win 7 lại dễ hơn bạn tưởng. Bài viết này sẽ hướng dẫn bạn từng bước một, theo cách thân thiện, dễ hiểu và ai cũng có thể làm theo....
Phần mềm giả lập Android trên PC nhẹ nhất, không lo giật lag
Trong thời đại công nghệ số bùng nổ, việc sở hữu một chiếc smartphone là điều hiển nhiên. Nhưng đôi khi, chúng ta cần một không gian rộng rãi hơn, mạnh mẽ hơn để trải nghiệm các ứng dụng và trò chơi di động. Đó là lúc giả lập Android trên PC phát huy tác dụng.

Top phần mềm ghép nhạc vào video tốt nhất hiện nay
Ghép nhạc vào video làm cho một video trở nên sống động, thu hút và để lại ấn tượng trong tâm trí người xem. Từ những blog cá nhân, video kỷ niệm đến clip quảng bá sản phẩm, âm nhạc phù hợp có thể biến những khung hình bình thường trở nên sống động và ấn tượng hơn. Hiểu được nhu cầu đó, Devwork tổng hợp và giới thiệu các phần mềm ghép nhạc vào video dễ sử dụng, phù hợp với nhiều mục đích khác nhau để bạn có thể chọn lựa công cụ tối ưu cho mình.

Top các phần mềm ghép nhạc vào ảnh bạn nên thử
Bạn có bao giờ nghĩ đến việc biến những bức ảnh kỷ niệm thành một video đầy cảm xúc hoặc bạn muốn tạo một clip quảng cáo bắt tai để “hút” khách hàng? Nếu câu trả lời là “CÓ”, thì phần mềm ghép nhạc vào ảnh chính là công cụ bạn không thể bỏ qua! Trong bài viết này, Devwork sẽ giúp bạn hiểu rõ mọi thứ về phần mềm ghép nhạc, từ cách chọn công cụ tốt nhất đến bí kíp tạo video ấn tượng.


Top phần mềm ghép ảnh thành video tốt nhất 2025
Ngày nay, video đang dần trở thành ngôn ngữ kể chuyện phổ biến nhất. Thay vì chỉ chia sẻ những bức ảnh đơn lẻ, người dùng ngày càng thích tạo video để tổng hợp kỷ niệm bằng cách sinh động và thú vị hơn. Chính vì thế, phần mềm ghép ảnh thành video đang trở thành “trợ thủ đắc lực” không thể thiếu. Trong bài viết này, Devwork sẽ giới thiệu cho bạn những phần mềm ghép ảnh và video tốt nhất hiện nay, kèm theo hướng dẫn sử dụng đơn giản. Cùng tìm hiểu ngay nhé!

Top phần mềm ghép ảnh trên máy tính tốt nhất 2025
Trong thời đại hình ảnh lên ngôi, việc ghép ảnh không chỉ là thú vui mà còn là công cụ quan trọng với dân văn phòng, marketer hay người làm nội dung. Dưới đây là danh sách các phần mềm ghép ảnh trên máy tính tốt nhất 2025, bao gồm cả bản online, bản cài đặt đơn giản, dễ sử dụng. Cùng Devwork tìm hiểu ngay nhé!
