Tiếp cận. Khi bạn tách một chuỗi mà không chuyển bất kỳ dấu phân cách nào, thì theo mặc định, bất kỳ khoảng trắng nào cũng được coi là dấu phân cách. Bạn có thể sử dụng điều này để làm lợi thế của mình và chỉ cần tách chuỗi đã cho mà không cần chuyển bất kỳ dấu phân cách nào trong phương thức Show Mã số text = "abc\t\txy\tcda\t\tmnop" print(text.split()) # ['abc', 'xy', 'cda', 'mnop'] 🌎Đọc liên quan. Tách chuỗi Python() Phương pháp 2. Sử dụng lại. tách ra()Điều kiện tiên quyết. Phương thức # input text = "abc\t\txy\tcda\t\tmnop" # Expected output ['abc', 'xy', 'cda', 'mnop']2 trả về một danh sách các chuỗi bằng cách so khớp tất cả các lần xuất hiện của mẫu trong chuỗi và chia chuỗi theo các lần xuất hiện đó 🌎Đọc thêm. Tách Regex trong Python Tiếp cận. Sử dụng gói regex của Python và gọi phương thức phân tách, phương thức này nhận hai đối số. Đối số đầu tiên phải là mẫu mà bạn muốn so khớp trong khi tách. Trong trường hợp này, nó là một tab đơn giản. Vì vậy, hãy sử dụng biểu thức như # input text = "abc\t\txy\tcda\t\tmnop" # Expected output ['abc', 'xy', 'cda', 'mnop']3 để tìm kiếm một hoặc nhiều lần xuất hiện của tab. Đối số thứ hai là chính chuỗi (dãy) đã cho. Đó là nó Mã số import re text = "abc\t\txy\tcda\t\tmnop" print(re.split(r'\t+', text)) # ['abc', 'xy', 'cda', 'mnop'] Phương pháp 3. Sử dụng lại. biên dịch()Phương thức # input text = "abc\t\txy\tcda\t\tmnop" # Expected output ['abc', 'xy', 'cda', 'mnop']4 trả về một đối tượng biểu thức chính quy từ # input text = "abc\t\txy\tcda\t\tmnop" # Expected output ['abc', 'xy', 'cda', 'mnop']5 cung cấp các phương thức biểu thức chính quy cơ bản như # input text = "abc\t\txy\tcda\t\tmnop" # Expected output ['abc', 'xy', 'cda', 'mnop']6, # input text = "abc\t\txy\tcda\t\tmnop" # Expected output ['abc', 'xy', 'cda', 'mnop']7 và # input text = "abc\t\txy\tcda\t\tmnop" # Expected output ['abc', 'xy', 'cda', 'mnop']8. Cách tiếp cận hai bước rõ ràng là (1) biên dịch và (2) tìm kiếm mẫu sẽ hiệu quả hơn so với việc gọi, chẳng hạn như # input text = "abc\t\txy\tcda\t\tmnop" # Expected output ['abc', 'xy', 'cda', 'mnop']9 cùng một lúc, nếu bạn so khớp cùng một mẫu nhiều lần vì nó tránh được việc biên dịch thừa của cùng một mẫu 🌎Đọc thêm. Biên dịch Python Regex Mã số import re text = "abc\t\txy\tcda\t\tmnop" print(re.compile("[^\t]+").findall(text)) # ['abc', 'xy', 'cda', 'mnop'] Bạn có muốn làm chủ siêu năng lực regex không? . (1) nghiên cứu một chương sách, (2) giải câu đố mật mã và (3) xem video về chương giáo dục Bài tậpCho một chuỗi chứa các tab ở đầu, giữa và cuối chuỗi. Bạn sẽ tách chuỗi bằng cách sử dụng tab làm dấu phân cách như thế nào? Thách đấu. Hãy xem xét mã được đưa ra dưới đây. Đầu ra chứa các chuỗi rỗng. Bạn có thể loại bỏ các chuỗi trống khỏi danh sách không? # Given colours = '\tRed\tBlack\tYellow\tBlue\t' print(colours.split('\t')) # Output ['', 'Red', 'Black', 'Yellow', 'Blue', ''] # Expected Output ['Red', 'Black', 'Yellow', 'Blue'] Giải pháp. Phương thức text = "abc\t\txy\tcda\t\tmnop" print(text.split()) # ['abc', 'xy', 'cda', 'mnop']0 có thể được sử dụng để lọc ra các chuỗi rỗng từ danh sách. Hàm lấy text = "abc\t\txy\tcda\t\tmnop" print(text.split()) # ['abc', 'xy', 'cda', 'mnop']1 làm đối số đầu tiên và danh sách các chuỗi phân tách làm đối số thứ hai. Sau đó, nó lặp qua danh sách và loại bỏ các phần tử trống. Khi phương thức text = "abc\t\txy\tcda\t\tmnop" print(text.split()) # ['abc', 'xy', 'cda', 'mnop']0 trả về một đối tượng bộ lọc, chúng ta cần sử dụng text = "abc\t\txy\tcda\t\tmnop" print(text.split()) # ['abc', 'xy', 'cda', 'mnop']3 để chuyển đổi đối tượng thành một danh sách để có thể xem nó ở dạng con người có thể đọc được colours = '\tRed\tBlack\tYellow\tBlue\t' res = list(filter(None, colours.split('\t'))) print(res) Ghi chú. Hàm text = "abc\t\txy\tcda\t\tmnop" print(text.split()) # ['abc', 'xy', 'cda', 'mnop']0 tích hợp sẵn của Python dùng để lọc ra các phần tử vượt qua điều kiện lọc. Phải mất hai đối số. text = "abc\t\txy\tcda\t\tmnop" print(text.split()) # ['abc', 'xy', 'cda', 'mnop']5 và text = "abc\t\txy\tcda\t\tmnop" print(text.split()) # ['abc', 'xy', 'cda', 'mnop']6. ____0_______5 gán một giá trị Boolean cho từng phần tử trong text = "abc\t\txy\tcda\t\tmnop" print(text.split()) # ['abc', 'xy', 'cda', 'mnop']6 để kiểm tra xem phần tử đó có vượt qua bộ lọc hay không. Nó trả về một iterator với các phần tử vượt qua điều kiện lọc 🌎Đọc thêm. Bộ lọc Python() Phần kết luậnTiếng hoan hô. Chúng tôi đã giải quyết thành công vấn đề đã cho bằng ba cách khác nhau. Tôi hy vọng bạn thích bài viết này và nó sẽ giúp bạn trong hành trình viết mã Python của mình. Hãy đăng ký và theo dõi để có nhiều bài viết thú vị hơn Khóa học Python RegexCác kỹ sư của Google là những bậc thầy về biểu thức chính quy. Công cụ tìm kiếm Google là một công cụ xử lý văn bản khổng lồ trích xuất giá trị từ hàng nghìn tỷ trang web. Các kỹ sư của Facebook là những bậc thầy về biểu thức chính quy. Các mạng xã hội như Facebook, WhatsApp và Instagram kết nối con người qua tin nhắn văn bản. Các kỹ sư của Amazon là những bậc thầy về biểu thức chính quy. Gã khổng lồ thương mại điện tử vận chuyển sản phẩm dựa trên mô tả sản phẩm bằng văn bản. Biểu thức chính quy thống trị trò chơi khi xử lý văn bản đáp ứng khoa học máy tính. Nếu bạn cũng muốn trở thành bậc thầy về biểu thức chính quy, hãy xem khóa học Python regex toàn diện nhất hành tinh Shubham Sayon Tôi là một người tạo nội dung và Blogger Python chuyên nghiệp. Tôi đã xuất bản nhiều bài báo và tạo các khóa học trong một khoảng thời gian. Hiện tại tôi đang làm việc với tư cách là một freelancer toàn thời gian và tôi có kinh nghiệm trong các lĩnh vực như Python, AWS, DevOps và Networking |