Đối với mỗi chuỗi chủ đề trong Sê-ri, hãy trích xuất các nhóm từ kết quả khớp đầu tiên của biểu thức chính quy
Parameterspat strMẫu biểu thức chính quy với các nhóm chụp
cờ int, mặc định 0 [không có cờ]Cờ từ mô-đun
>>> print[string[:7]] This is8, e. g.
>>> print[string[:7]] This is9, sửa đổi khớp biểu thức chính quy cho những thứ như chữ hoa, dấu cách, v.v. Để biết thêm chi tiết, xemmở rộng bool, mặc định Đúng
Nếu Đúng, hãy trả lại DataFrame với một cột cho mỗi nhóm chụp. Nếu Sai, hãy trả về Sê-ri/Chỉ mục nếu có một nhóm chụp hoặc DataFrame nếu có nhiều nhóm chụp
ReturnsDataFrame hoặc Sê-ri hoặc Chỉ mụcKhung dữ liệu có một hàng cho mỗi chuỗi chủ đề và một cột cho mỗi nhóm. Bất kỳ tên nhóm chụp nào trong pat biểu thức chính quy sẽ được sử dụng cho tên cột; . dtype của mỗi cột kết quả luôn là đối tượng, ngay cả khi không tìm thấy kết quả phù hợp. Nếu
>>> print[string[:7]] This is0 và pat chỉ có một nhóm chụp, thì trả về Sê-ri [nếu chủ đề là Sê-ri] hoặc Chỉ mục [nếu chủ đề là Chỉ mục]
Học bất cứ điều gì mới có thể là một thách thức. Càng làm việc với Python, bạn càng nhận thấy tần suất xuất hiện của các chuỗi. Thao tác chuỗi trong Python là một kỹ năng quan trọng. Trong bài viết này, chúng tôi giới thiệu cho bạn cách tạo chuỗi con của chuỗi trong Python
Python là một ngôn ngữ tuyệt vời để học, đặc biệt nếu bạn là người mới bắt đầu, như chúng ta sẽ thảo luận trong bài viết này. Chúng tôi thậm chí còn có một khóa học về cách làm việc với các chuỗi trong Python. Nó chứa các bài tập tương tác được thiết kế để bắt đầu từ cấp độ cơ bản và dạy cho bạn tất cả những gì bạn cần biết về loại dữ liệu quan trọng này. Khi bạn cảm thấy thoải mái khi làm việc với các chuỗi, bạn có thể giải quyết một số vấn đề thú vị về khoa học dữ liệu. Hãy xem khóa học giới thiệu về chủ đề đa dạng này
Cắt và tách chuỗi
Cách đầu tiên để lấy một chuỗi con của một chuỗi trong Python là cắt và tách. Hãy bắt đầu bằng cách xác định một chuỗi, sau đó chuyển sang một vài ví dụ
>>> string = 'This is a sentence. Here is 1 number.'
Bạn có thể chia chuỗi này thành các chuỗi con, mỗi chuỗi có kiểu dữ liệu
>>> print[string[:7]] This is3. Ngay cả khi chuỗi của bạn là một số, nó vẫn thuộc loại dữ liệu này. Bạn có thể kiểm tra điều này bằng chức năng
>>> print[string[:7]] This is4 tích hợp. Các số cũng có thể thuộc các loại khác, bao gồm cả loại dữ liệu
>>> print[string[:7]] This is5 mà chúng tôi thảo luận ở đây
Giống như mảng và danh sách trong Python, các chuỗi có thể được cắt bằng cách chỉ định chỉ mục bắt đầu và chỉ mục kết thúc, bên trong dấu ngoặc vuông và được phân tách bằng dấu hai chấm. Điều này trả về một chuỗi con của chuỗi ban đầu
Hãy nhớ lập chỉ mục trong Python bắt đầu từ 0. Để lấy 7 ký tự đầu tiên từ chuỗi, chỉ cần làm như sau
>>> print[string[:7]] This is
Lưu ý ở đây chúng tôi không chỉ định rõ ràng chỉ mục bắt đầu. Do đó, nó nhận giá trị mặc định là 0
Nhân tiện, nếu bạn muốn biết thêm thông tin về hàm
>>> print[string[:7]] This is6, hãy xem bài viết này. Có thể có nhiều thứ hơn bạn nhận ra
Chúng ta cũng có thể lập chỉ mục liên quan đến phần cuối của chuỗi bằng cách chỉ định giá trị bắt đầu âm
>>> print[string[-7:]] number.
Vì chúng ta không chỉ định giá trị cuối nên nó lấy giá trị mặc định là
>>> print[string[:7]] This is7. Nếu bạn biết chỉ mục bắt đầu và kết thúc của một từ cụ thể, bạn có thể trích xuất nó từ chuỗi như thế này________số 8
Tuy nhiên, điều này không tối ưu để trích xuất các từ riêng lẻ từ một chuỗi vì nó yêu cầu biết trước các chỉ mục
Một tùy chọn khác để lấy một chuỗi con của chuỗi là chia nó thành các từ, điều này có thể được thực hiện bằng phương thức
>>> print[string[:7]] This is8. Điều này có hai đối số tùy chọn. một chuỗi xác định các ký tự sẽ phân tách tại [mặc định là bất kỳ khoảng trắng nào] và số lần phân tách tối đa [mặc định là -1, nghĩa là không có giới hạn]. Ví dụ: nếu chúng tôi muốn phân tách tại một khoảng trắng, bạn có thể thực hiện thao tác sau, thao tác này sẽ trả về danh sách các chuỗi
>>> print[string[:7]] This is0
Nhưng lưu ý rằng dấu chấm [ký tự điểm] được bao gồm ở cuối các từ “câu” và “số”. Chúng ta sẽ quay lại vấn đề này sau trong bài viết khi chúng ta xem xét các biểu thức chính quy
Có rất nhiều phương thức chuỗi tích hợp trong Python. Chúng cho phép bạn sửa đổi một chuỗi, kiểm tra các thuộc tính của nó hoặc tìm kiếm trong đó. Một phương thức hữu ích để tạo ra một chuỗi con phức tạp hơn của một chuỗi trong Python là phương thức
>>> print[string[:7]] This is9. Nó cần lặp lại các chuỗi và nối chúng. Đây là một ví dụ
>>> print[string[:7]] This is2
Với thủ thuật lập chỉ mục thông minh, điều này có thể được sử dụng để in một chuỗi con chứa mọi từ thứ hai từ bản gốc
>>> print[string[:7]] This is3
Vì đầu vào của phương thức
>>> print[string[-7:]] number.0 lấy một danh sách, bạn có thể hiểu danh sách để tạo một chuỗi con từ tất cả các từ có độ dài bằng 4 chẳng hạn. Đối với những bạn đang tìm kiếm một bài tập thử thách hơn, hãy thử điều này cho chính mình. Chúng tôi cũng sẽ chỉ cho bạn một phương pháp khác để thực hiện việc này ở phần sau của bài viết. Nếu bạn muốn biết cách ghi chuỗi vào tệp bằng Python, hãy xem bài viết này
Mô-đun phân tích cú pháp
Có một mô-đun Python ít được biết đến được gọi là phân tích cú pháp với chức năng tuyệt vời để tạo chuỗi con trong Python. Mô-đun này không đạt tiêu chuẩn với Python và cần được cài đặt riêng. Cách tốt nhất là chạy lệnh
>>> print[string[-7:]] number.1 từ thiết bị đầu cuối của bạn
Đây là cách lấy một chuỗi con bằng cách sử dụng hàm phân tích cú pháp, chấp nhận hai đối số
>>> print[string[:7]] This is6
Gọi phương thức
>>> print[string[-7:]] number.2 trên
>>> print[string[-7:]] number.3 trả về một bộ có các chuỗi con được trích xuất từ đối số thứ hai ở vị trí của dấu ngoặc nhọn
>>> print[string[-7:]] number.4 trong đối số thứ nhất. Đối với những bạn quen thuộc với định dạng chuỗi, điều này có vẻ quen thuộc một cách đáng ngờ. Thật vậy, mô-đun phân tích cú pháp ngược lại với
>>> print[string[-7:]] number.5. Kiểm tra cái này, cái này ngược lại với đoạn mã trên
>>> print[string[:7]] This is1
Trong khi chúng ta đang nói về mô-đun phân tích cú pháp, thì cũng nên thảo luận về chức năng tìm kiếm, vì tìm kiếm là trường hợp sử dụng phổ biến khi làm việc với chuỗi. Đối số đầu tiên của tìm kiếm xác định những gì bạn đang tìm kiếm bằng cách chỉ định cụm từ tìm kiếm có dấu ngoặc nhọn. Thứ hai xác định nơi để tìm
Đây là một ví dụ
>>> print[string[:7]] This is2
Một lần nữa, gọi phương thức
>>> print[string[-7:]] number.2 trả về một bộ dữ liệu với kết quả. Nếu bạn muốn chỉ số bắt đầu và kết thúc của kết quả, hãy gọi phương thức spans. Sử dụng mô-đun phân tích cú pháp để tìm kiếm trong một chuỗi rất hay – cách bạn xác định những gì bạn đang tìm kiếm khá mạnh mẽ [tôi. e. , đối số đầu tiên]
Biểu thức chính quy
Mô-đun Python cuối cùng mà chúng tôi muốn thảo luận là re, viết tắt của “regex”, bản thân nó là viết tắt của “biểu thức chính quy. ” Biểu thức chính quy có thể hơi đáng sợ – chúng liên quan đến việc xác định các mẫu chuyên biệt cao và đôi khi phức tạp để tìm kiếm trong chuỗi
Bạn có thể sử dụng regex để trích xuất các chuỗi con trong Python. Chủ đề quá sâu để đề cập ở đây một cách toàn diện, vì vậy chúng tôi sẽ chỉ đề cập đến một số chức năng hữu ích và cung cấp cho bạn cảm nhận về cách xác định các mẫu tìm kiếm. Để biết thêm thông tin về mô-đun này và chức năng của nó, hãy xem
Hàm
>>> print[string[-7:]] number.7 nhận hai đối số bắt buộc. mô hình và chuỗi. Hãy bắt đầu bằng cách trích xuất tất cả các từ từ chuỗi chúng tôi đã sử dụng ở trên
>>> print[string[:7]] This is0
Mẫu
>>> print[string[-7:]] number.8 khớp với tất cả các chữ cái viết thường,
>>> print[string[-7:]] number.9 cho biết các từ có thể có độ dài bất kỳ và cờ cho bạn biết bỏ qua trường hợp này. So sánh kết quả này với kết quả chúng tôi nhận được ở trên bằng cách sử dụng
>>> print[string[:7]] This is8 và bạn nhận thấy dấu chấm không được bao gồm
Bây giờ, hãy trích xuất tất cả các số từ chuỗi
>>> print[string[:7]] This is1
>>> print[string[10:18]] sentence1 khớp với ranh giới ở đầu và cuối của mẫu,
>>> print[string[10:18]] sentence2 khớp với bất kỳ chữ số nào từ 0 đến 9 và một lần nữa,
>>> print[string[-7:]] number.9 cho biết các số có thể có độ dài bất kỳ. Ví dụ: ta tìm tất cả các từ có độ dài 4 ký tự như sau
>>> print[string[:7]] This is2
>>> print[string[10:18]] sentence4 khớp với bất kỳ từ nào và {4} xác định độ dài của các từ khớp. Để tạo chuỗi con, bạn chỉ cần sử dụng
>>> print[string[:7]] This is9 như chúng tôi đã làm ở trên. Đây là một cách tiếp cận thay thế cho cách hiểu danh sách mà chúng tôi đã đề cập trước đó, cũng có thể được sử dụng để tạo chuỗi con có tất cả các từ có độ dài 4
Có các chức năng khác trong mô-đun này đáng xem qua.
>>> print[string[10:18]] sentence6 có thể được sử dụng để xác định xem mẫu có khớp ở đầu chuỗi hay không và
>>> print[string[10:18]] sentence7 quét qua chuỗi để tìm bất kỳ vị trí nào có mẫu xảy ra
Kết thúc suy nghĩ về việc tạo chuỗi con trong Python
Trong bài viết này, chúng ta đã thảo luận về việc trích xuất và in các chuỗi con của chuỗi trong Python. Sử dụng điều này làm nền tảng để khám phá các chủ đề khác, chẳng hạn như lấy dữ liệu từ một trang web. Bạn có thể xác định mẫu biểu thức chính quy để trích xuất địa chỉ email từ chuỗi không?
Nếu bạn cũng làm việc nhiều với dữ liệu dạng bảng, chúng tôi có một bài viết hướng dẫn bạn cách in bảng đẹp trong Python. Dần dần thêm tất cả các kỹ năng này vào hộp công cụ của bạn sẽ biến bạn thành một lập trình viên lão luyện