Hàm REGEXREPLACE

Áp dụng cho
Excel cho Microsoft 365 Excel cho Microsoft 365 dành cho máy Mac

Hàm REGEXREPLACE cho phép bạn thay thế văn bản từ một chuỗi bằng một chuỗi khác, dựa trên biểu thức chính quy ("regex") được cung cấp.

Cú pháp

Hàm REGEXREPLACE thay thế các chuỗi trong văn bản được cung cấp khớp với mẫu hình bằng lệnh thay thế.

Cú pháp của hàm REGEXEXTRACT là:

REGEXREPLACE(text, pattern, replacement, [occurrence], [case_sensitivity])

Đối số Mô tả
text
(bắt buộc)
Văn bản hoặc tham chiếu đến ô có chứa văn bản mà bạn muốn thay thế các chuỗi bên trong.
mẫu hình
(bắt buộc)
Biểu thức chính quy ("regex") mô tả mẫu văn bản bạn muốn thay thế.
thay thế
(bắt buộc)
Văn bản mà bạn muốn thay thế các phiên bản của pattern.
sự xuất hiện Xác định phiên bản mẫu hình mà bạn muốn thay thế. Theo mặc định, số lần xuất hiện là 0 thay thế tất cả các phiên bản. Một số âm sẽ thay thế mẫu đó, tìm kiếm từ cuối.
case_sensitivity Xác định kết quả khớp có phân biệt chữ hoa, chữ thường hay không. Theo mặc định, kết quả khớp có phân biệt chữ hoa, chữ thường. Nhập một trong những thông tin sau:
0: Phân biệt chữ hoa/thường
1: Không phân biệt chữ hoa/thường

Lưu ý

Khi viết các mẫu biểu thức regex, các ký hiệu được gọi là 'mã thông báo' có thể được sử dụng khớp với nhiều ký tự khác nhau. Đây là một số mã thông báo đơn giản để tham khảo:

  • "[0-9]": bất kỳ chữ số nào
  • "[A-Z]": một ký tự trong phạm vi từ A đến Z
  • ".": ký tự bất kỳ
  • "a": ký tự "a"
  • "a*": không hoặc nhiều "a"
  • "A+": Một hoặc nhiều chữ "A"
  • Tất cả các biểu thức chính quy cho hàm này, cũng như REGEXTEST và REGEXEXTRACT sử dụng 'flavor' PCRE2 của regex.
  • REGEXEXTRACT luôn trả về giá trị văn bản. Bạn có thể chuyển đổi các kết quả này thành một số bằng hàm VALUE.

Ví dụ

Sao chép dữ liệu ví dụ và dán vào ô A1 của trang tính Excel mới. Nếu cần, bạn có thể điều chỉnh độ rộng cột để xem toàn bộ dữ liệu.

Ví dụ 1

Sử dụng REGEXREPLACE để ẩn danh các số điện thoại bằng cách thay thế 3 chữ số đầu tiên của số đó bằng ***, sử dụng mẫu hình

"[0-9]+-"

Data
Sonia Rees(378) 555-4195
Thiên thần Nhô(878) 555-8622
Blake Martin(437) 555-8987
William Kirby(619) 555-4212
Avery Smith(579) 555-5658
Parker Jones(346) 555-0925
Liam Small(405) 555-0887
Hollie Rees(666) 555-1872
Công thức
=REGEXREPLACE(A2,"[0-9]+-","***-")

Hình minh họa sau đây cho thấy kết quả. Bạn sẽ cần ngắt dòng văn bản trên ô A4 để hiển thị các ngắt dòng trong kết quả.

Sử dụng REGEXREPLACE để thay thế ba chữ số đầu tiên của mỗi số điện thoại trong văn bản hỗn hợp bằng *, sử dụng mẫu [0-9]+-

Ví dụ 2

Sử dụng REGEXREPLACE với các nhóm chụp để tách biệt và sắp xếp lại họ và tên đã cho, sử dụng mẫu hình: "([AZ][a-z]+)([AZ][a-z]+)"; và thay thế: "$2, $1".

Lưu ý: Nhóm chụp được xác định theo mẫu với dấu ngoặc đơn "()" và có thể được tham chiếu thay thế là "$n". Trong ví dụ này, $1 và $2 tham chiếu lần lượt đến nhóm thu đầu tiên và nhóm thu thứ hai.

Data
SoniaBrown
Công thức
=REGEXREPLACE(A2,"([A-Z][a-z]+)([A-Z][a-z]+)","$2, $1")

Hình minh họa sau đây cho thấy kết quả.

Sử dụng REGEXREPLACE với các nhóm chụp để tách biệt và sắp xếp lại tên và họ, sử dụng mẫu: ([A-Z][a-z]+)([A-Z][a-z]+) và thay thế: $2, $1