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ả.
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ả.