Trích xuất dữ liệu từ Google Trang tính: văn bản nhất định từ chuỗi, URL từ liên kết, v.v.

  • Chia Sẻ Cái Này
Michael Brown

Phần hoạt động tiếp theo của chúng tôi với văn bản trong bảng tính được dành cho việc trích xuất. Tìm hiểu cách trích xuất nhiều loại dữ liệu — văn bản, ký tự, số, URL, địa chỉ email, ngày & thời gian, v.v. — từ nhiều vị trí khác nhau trong nhiều ô Google Trang tính cùng một lúc.

    Công thức Google Trang tính để trích xuất văn bản và số từ chuỗi

    Công thức trong Google Tờ là tất cả mọi thứ. Trong khi một số kết hợp thêm văn bản & số và xóa các ký tự khác nhau, một số trong số chúng cũng trích xuất văn bản, số, ký tự riêng, v.v.

    Trích xuất dữ liệu theo vị trí: ký tự N đầu/cuối/giữa

    Các chức năng dễ xử lý nhất khi bạn chuẩn bị lấy dữ liệu từ các ô trong Google Trang tính là TRÁI, PHẢI và MID. Chúng lấy bất kỳ dữ liệu nào theo vị trí.

    Trích xuất dữ liệu từ đầu ô trong Google Trang tính

    Bạn có thể dễ dàng lấy ra N ký tự đầu tiên bằng cách sử dụng hàm LEFT:

    LEFT(string, [số_ký_tự])
    • chuỗi là văn bản mà bạn muốn trích xuất dữ liệu.
    • số_ký_tự là số lượng ký tự cần trích xuất bắt đầu từ bên trái.

    Đây là ví dụ đơn giản nhất: hãy lấy mã quốc gia ra khỏi các số điện thoại:

    Như bạn có thể thấy, quốc gia mã lấy 6 ký hiệu ở đầu ô, vì vậy công thức bạn cần là:

    =LEFT(A2,6)

    Mẹo. ArrayFormula sẽ cho phép lấy 6 ký tự từtoàn bộ phạm vi cùng một lúc:

    =ArrayFormula(LEFT(A2:A7,6))

    Trích xuất dữ liệu từ cuối ô trong Google Trang tính

    Để lấy N ký tự cuối cùng ra khỏi ô, thay vào đó hãy sử dụng hàm RIGHT:

    RIGHT(chuỗi,[số_ký_tự])
    • chuỗi vẫn là văn bản (hoặc tham chiếu ô) để trích xuất dữ liệu.
    • số_ký_tự cũng là số ký tự cần lấy từ bên phải.

    Hãy lấy tên quốc gia đó từ các số điện thoại giống nhau:

    Chúng chỉ có 2 ký tự và đó chính xác là những gì tôi đề cập trong công thức:

    =RIGHT(A2,2)

    Mẹo. ArrayFormula cũng sẽ giúp bạn trích xuất dữ liệu từ cuối tất cả các ô trong Google Trang tính cùng một lúc:

    =ArrayFormula(RIGHT(A2:A7,2))

    Trích xuất dữ liệu từ giữa các ô trong Google Trang tính

    Nếu có hàm lấy dữ liệu từ đầu và cuối ô thì cũng phải có hàm lấy dữ liệu từ giữa. Và vâng — có một.

    Nó có tên là MID:

    MID(string, started_at, extract_length)
    • string — văn bản mà bạn muốn loại bỏ phần giữa from.
    • starting_at — vị trí của ký tự mà bạn muốn bắt đầu lấy dữ liệu từ đó.
    • extract_length — số của các ký tự bạn cần kéo ra.

    Với ví dụ về các số điện thoại giống nhau, hãy tự tìm các số điện thoại không có mã quốc gia và quốc gia của chúngviết tắt:

    Vì mã quốc gia kết thúc bằng ký tự thứ 6 và thứ 7 là dấu gạch ngang nên tôi sẽ kéo các số bắt đầu từ chữ số thứ 8. Và tôi sẽ có tổng cộng 8 chữ số:

    =MID(A2,8,8)

    Mẹo. Thay đổi một ô thành toàn bộ phạm vi và gói nó trong ArrayFormula sẽ cung cấp cho bạn kết quả cho từng ô cùng một lúc:

    =ArrayFormula(MID(A2:A7,8,8))

    Trích xuất văn bản/số từ chuỗi

    Đôi khi trích xuất văn bản theo vị trí (như hình trên) không phải là một tùy chọn. Các chuỗi bắt buộc có thể nằm trong bất kỳ phần nào trong các ô của bạn và bao gồm một số ký tự khác buộc bạn phải tạo các công thức khác nhau cho từng ô.

    Nhưng Google Trang tính sẽ không phải là Google Trang tính nếu không có các chức năng khác có thể giúp trích xuất văn bản từ các chuỗi.

    Hãy xem lại một số cách khả thi mà bảng tính cung cấp.

    Trích xuất dữ liệu trước một văn bản nhất định — TRÁI + TÌM KIẾM

    Bất cứ khi nào bạn muốn trích xuất dữ liệu đứng trước một văn bản nhất định, hãy sử dụng LEFT + SEARCH:

    • LEFT được sử dụng để trả về một số ký tự nhất định từ đầu ô (từ bên trái của chúng)
    • SEARCH tìm kiếm các ký tự/chuỗi nhất định và nhận vị trí của chúng.

    Kết hợp những thứ này — và LEFT sẽ trả về số lượng ký tự do SEARCH đề xuất.

    Đây là một ví dụ: làm thế nào để bạn trích xuất mã văn bản trước mỗi 'ea'?

    Đây là công thức sẽ giúp bạn trong trường hợp tương tựtrường hợp:

    =LEFT(A2,SEARCH("ea",A2)-1)

    Đây là những gì xảy ra trong công thức:

    1. SEARCH("ea",A2 ) tìm kiếm 'ea' trong ô A2 và trả về vị trí mà 'ea' bắt đầu cho mỗi ô — 10.
    2. Vì vậy, vị trí thứ 10 là vị trí của 'e'. Nhưng vì tôi muốn mọi thứ ngay trước 'ea', tôi cần trừ 1 khỏi vị trí đó. Nếu không, 'e' cũng sẽ được trả lại. Vì vậy, cuối cùng tôi nhận được 9.
    3. TRÁI nhìn vào A2 và nhận được 9 ký tự đầu tiên.

    Trích xuất dữ liệu sau văn bản

    Ở đó cũng có nghĩa là lấy mọi thứ sau một chuỗi văn bản nhất định. Nhưng lần này, RIGHT sẽ không giúp được gì. Thay vào đó, REGEXREPLACE sẽ thay phiên nhau.

    Mẹo. REGEXREPLACE sử dụng các biểu thức chính quy. Nếu bạn chưa sẵn sàng đối phó với chúng, có một giải pháp dễ dàng hơn nhiều được mô tả bên dưới. REGEXREPLACE(văn bản, biểu_thức chính quy, thay thế)

    • văn bản là một chuỗi hoặc một ô mà bạn muốn thực hiện thay đổi
    • biểu_thức chính quy là sự kết hợp của các ký tự đại diện cho một phần của văn bản mà bạn đang tìm kiếm
    • sự thay thế là bất kỳ thứ gì bạn muốn nhận thay cho văn bản đó

    Vậy, làm cách nào để bạn sử dụng công cụ này để trích xuất dữ liệu sau một văn bản nhất định — trong ví dụ của tôi là 'ea'?

    Dễ dàng — sử dụng công thức này:

    =REGEXREPLACE(A2,"(.*)ea(.*)","$2")

    Hãy để tôi giải thích cách hoạt động chính xác của công thức này:

    1. A2 là ô tôi đang trích xuất dữ liệu từ.
    2. "(.*)ea(.*)" là dữ liệu thường xuyên của tôibiểu thức (hoặc bạn có thể gọi nó là mặt nạ). Tôi tìm 'ea' và đặt tất cả các ký tự khác vào trong ngoặc. Có 2 nhóm ký tự — mọi thứ trước 'ea' là nhóm đầu tiên (.*) và mọi thứ sau 'ea' là nhóm thứ hai (.*). Toàn bộ mặt nạ được đặt trong dấu ngoặc kép.
    3. "$2" là những gì tôi muốn lấy — nhóm thứ hai (do đó là số 2) từ đối số trước đó.

    Mẹo. Tất cả các ký tự được sử dụng trong biểu thức chính quy được thu thập trên trang đặc biệt này.

    Trích xuất các số từ các ô trong Google Trang tính

    Điều gì sẽ xảy ra nếu bạn chỉ muốn trích xuất các số khi vị trí của chúng và bất kỳ thứ gì đứng trước & sau không thành vấn đề?

    Mặt nạ (còn gọi là biểu thức chính quy) cũng sẽ hữu ích. Trên thực tế, tôi sẽ sử dụng hàm REGEXREPLACE tương tự và thay đổi biểu thức chính quy:

    =REGEXREPLACE(A2,"[^[:digit:]]", "")

    1. A2 là một ô mà tôi muốn lấy các số đó.
    2. "[^[:digit:]]" là một biểu thức chính quy lấy mọi thứ trừ các chữ số. Biểu tượng ^dấu mũ đó là ngoại lệ đối với các chữ số.
    3. "" thay thế mọi thứ ngoại trừ các ký tự số bằng "không có gì". Hay nói cách khác, loại bỏ nó hoàn toàn, chỉ để lại các số trong các ô. Hoặc, trích xuất số :)

    Trích xuất văn bản bỏ qua số và các ký tự khác

    Theo cách tương tự, bạn chỉ có thể trích xuất dữ liệu chữ cái từ các ô của Google Trang tính. Sự co lại cho biểu thức chính quy màviết tắt của văn bản được gọi tương ứng — alpha:

    =REGEXREPLACE(A2,"[^[:alpha:]]", "")

    Công thức này lấy mọi thứ trừ các chữ cái (A-Z, a-z) và thay thế nó theo nghĩa đen bằng "không có gì" . Hay nói cách khác, chỉ lấy ra các chữ cái.

    Các cách trích xuất dữ liệu không cần công thức từ các ô trong Google Trang tính

    Nếu bạn đang tìm kiếm một cách dễ dàng không cần công thức để trích xuất dữ liệu trích xuất các loại dữ liệu khác nhau, bạn đã đến đúng nơi. Tiện ích bổ sung Power Tools của chúng tôi chỉ có các công cụ dành cho công việc.

    Trích xuất các loại dữ liệu khác nhau bằng tiện ích bổ sung Power Tools

    Công cụ đầu tiên tôi muốn bạn biết có tên là Trích xuất . Nó thực hiện chính xác những gì bạn đang tìm kiếm trong bài viết này — trích xuất các loại dữ liệu khác nhau từ các ô của Google Trang tính.

    Cài đặt thân thiện với người dùng

    Tất cả các trường hợp tôi đã trình bày ở trên đều không chỉ có thể giải quyết được với tiện ích bổ sung. Công cụ này thân thiện với người dùng vì vậy tất cả những gì bạn cần làm là chọn phạm vi bạn muốn xử lý và đánh dấu vào các hộp kiểm bắt buộc. Không có công thức, không có biểu thức chính quy.

    Hãy nhớ điểm thứ hai của bài viết này với REGEXREPLACE và biểu thức chính quy? Đây là cách đơn giản của tiện ích bổ sung:

    Tùy chọn bổ sung

    Như bạn có thể thấy, có một số tùy chọn bổ sung (chỉ các hộp kiểm) mà bạn có thể bật/tắt nhanh chóng để có được kết quả chính xác nhất:

    1. Chỉ lấy các chuỗi của trường hợp văn bản được yêu cầu.
    2. Rút ra tất cả các lần xuất hiện từ mỗiô và đặt chúng vào một ô hoặc các cột riêng biệt.
    3. Chèn một cột mới có kết quả vào bên phải dữ liệu nguồn.
    4. Xóa văn bản đã trích xuất khỏi dữ liệu nguồn.

    Trích xuất các loại dữ liệu khác nhau

    Không chỉ Power Tools trích xuất dữ liệu trước/sau/giữa các chuỗi văn bản nhất định và N ký tự đầu tiên/cuối cùng; nhưng nó cũng lấy ra những thứ sau:

    1. Các số cùng với số thập phân giữ nguyên dấu phân cách thập phân/hàng nghìn:

  • N ký tự bắt đầu từ một vị trí nhất định trong một ô.
  • Siêu liên kết (văn bản + liên kết), URL (liên kết), địa chỉ email.
  • Trích xuất bất kỳ chuỗi dữ liệu nào từ mọi nơi

    Có cũng là một tùy chọn để thiết lập mẫu chính xác của riêng bạn và sử dụng nó để trích xuất. Trích xuất bằng mặt nạ và các ký tự đại diện của nó — * ? — thực hiện thủ thuật:

    • Ví dụ: bạn có thể đưa ra mọi thứ giữa các dấu ngoặc bằng cách sử dụng mặt nạ sau: (*)
    • Hoặc lấy những SKU chỉ có 5 số trong id của chúng: SKU ?????
    • Hoặc, như tôi trình bày trên ảnh chụp màn hình bên dưới, hãy kéo mọi thứ sau mỗi 'ea' trong mỗi ô: ea*

    Trích xuất ngày và giờ từ dấu thời gian

    Ngoài ra, có một công cụ nhỏ hơn sẽ trích xuất ngày và giờ từ dấu thời gian — nó được gọi là Tách ngày & Thời gian.

    Mặc dù ngay từ đầu, nó được tạo ra để phân chia các dấu thời gian, nhưng nó hoàn toàncó khả năng lấy riêng lẻ một trong các đơn vị mong muốn:

    Chỉ cần chọn một trong các hộp kiểm tùy thuộc vào nội dung bạn muốn trích xuất — ngày hoặc giờ — từ dấu thời gian trong Google Trang tính và nhấn Tách . Đơn vị được yêu cầu sẽ được sao chép sang một cột mới (hoặc nó sẽ thay thế dữ liệu gốc nếu bạn cũng chọn hộp kiểm cuối cùng):

    Công cụ này cũng là một phần của tiện ích bổ sung Power Tools để sau khi bạn cài đặt tiện ích này để lấy bất kỳ dữ liệu nào từ các ô của Google Trang tính, bạn sẽ được bảo vệ hoàn toàn. Nếu không, hãy để lại nhận xét và chúng tôi sẽ giúp bạn :)

    Michael Brown là một người đam mê công nghệ chuyên dụng với niềm đam mê đơn giản hóa các quy trình phức tạp bằng các công cụ phần mềm. Với hơn một thập kỷ kinh nghiệm trong ngành công nghệ, anh ấy đã trau dồi kỹ năng của mình trong Microsoft Excel và Outlook, cũng như Google Trang tính và Tài liệu. Blog của Michael dành để chia sẻ kiến ​​thức và chuyên môn của anh ấy với những người khác, cung cấp các mẹo và hướng dẫn dễ thực hiện để cải thiện năng suất và hiệu quả. Cho dù bạn là một chuyên gia dày dạn kinh nghiệm hay người mới bắt đầu, blog của Michael đều cung cấp những hiểu biết có giá trị và lời khuyên thiết thực để tận dụng tối đa những công cụ phần mềm thiết yếu này.