Công thức Excel: Trích xuất từ ​​bắt đầu bằng ký tự cụ thể -

Mục lục

Công thức chung

=TRIM(LEFT(SUBSTITUTE(MID(txt,FIND("@",txt),LEN(txt))," ",REPT(" ",100)),100))

Tóm lược

Để trích xuất các từ bắt đầu bằng một ký tự cụ thể, bạn có thể sử dụng công thức dựa trên sáu hàm: TRIM, LEFT, SUBSTITUTE, MID, LEN và REPT. Cách tiếp cận này hữu ích nếu bạn cần trích xuất những thứ như tên người dùng Twitter từ một ô chứa văn bản khác.

Trong ví dụ được hiển thị, công thức trong C5 là:

=TRIM(LEFT(SUBSTITUTE(MID(B5,FIND("@",B5),LEN(B5))," ",REPT(" ",100)),100))

Giải trình

Bắt đầu từ trong ra ngoài, hàm MID được sử dụng để trích xuất tất cả văn bản sau "@":

MID(B5,FIND("@",B5),LEN(B5))

Hàm FIND cung cấp điểm bắt đầu và để trích xuất tổng số ký tự, chúng tôi chỉ sử dụng LEN trên văn bản gốc. Điều này hơi cẩu thả, nhưng nó tránh được việc phải tính toán chính xác số ký tự cần trích xuất. MID không quan tâm nếu số này lớn hơn các ký tự còn lại, nó chỉ đơn giản là trích xuất tất cả văn bản theo sau "@".

Tiếp theo, chúng tôi "làm ngập" văn bản còn lại bằng các ký tự khoảng trắng, bằng cách thay thế bất kỳ khoảng trắng nào bằng 100 khoảng trắng bằng cách sử dụng kết hợp SUBSTITUTE và REPT:

SUBSTITUTE("@word and remaining text"," ",REPT(" ",100))

Điều này có vẻ điên rồ, nhưng logic trở nên rõ ràng dưới đây.

Tiếp theo, để chỉ trích xuất từ ​​chúng ta muốn (tức là @word), chúng ta sử dụng LEFT để trích xuất 100 ký tự đầu tiên từ bên trái. Điều này tạo cho chúng tôi "@word", cộng với nhiều khoảng trắng. Để hình dung, các dấu gạch nối bên dưới đại diện cho khoảng trắng:

@word ---------------------

Bây giờ chúng ta chỉ cần loại bỏ tất cả các khoảng trắng thừa. Để làm được điều đó, chúng tôi sử dụng hàm TRIM.

Lưu ý: 100 đại diện cho từ dài nhất bạn muốn tìm bắt đầu bằng ký tự đặc biệt. Tăng giảm cho phù hợp với nhu cầu của bạn.

Có một cách tốt hơn để làm điều này? Hãy cho tôi biết trong các ý kiến ​​dưới đây!

thú vị bài viết...