Trích xuất chuỗi con từ danh sách python

Trong bài viết này, chúng ta sẽ học cách trích xuất một chuỗi con giữa hai dấu trong một chuỗi bằng Ngôn ngữ lập trình Python. Nhưng trước đó chúng ta nên biết chuỗi con trong ngôn ngữ lập trình Python là gì?

Chuỗi con là một chuỗi các ký tự là một phần của chuỗi thường được tạo bằng các phương thức như cắt hoặc bằng cách sử dụng phương thức split[]. Bây giờ, hãy tìm hiểu về các phương pháp mà qua đó chúng ta có thể trích xuất chuỗi con đã cho giữa hai điểm đánh dấu

Mục lục

  • Trích xuất chuỗi con giữa hai điểm đánh dấu bằng Regex
  • Trích xuất chuỗi con giữa hai điểm đánh dấu bằng find[] và slice[]
  • Trích xuất chuỗi con giữa hai điểm đánh dấu bằng phương thức split[]
  • Trích xuất chuỗi con giữa hai điểm đánh dấu bằng phương thức partition[]
  • Tóm lược

Trích xuất chuỗi con giữa hai điểm đánh dấu bằng Regex

Phương pháp đầu tiên chúng ta sẽ sử dụng để trích xuất một chuỗi con đã cho giữa hai điểm đánh dấu là sử dụng phương thức search[] của mô-đun re. Re là viết tắt của Cụm từ thông dụng đi kèm với Ngôn ngữ lập trình Python

Ở đó. các phương thức tìm kiếm [mẫu] trả về chuỗi được tìm thấy khớp với mẫu đã cho. Nó dừng ngay khi tìm thấy chuỗi phù hợp và trả về chuỗi. Nếu không tìm thấy kết quả phù hợp thì t trả về Không có

Hãy xem một ví dụ,

import re

sampleStr = 'ilearncodingfrom;thispointer.com/articles'

try :
    # here ; and / are our two markers 
    # in which string can be found. 
    marker1 = ';'
    marker2 = '/'
    regexPattern = marker1 + '[.+?]' + marker2
    str_found = re.search[regexPattern, sampleStr].group[1]
except AttributeError:
    # Attribute error is expected if string 
    # is not found between given markers
    str_found = 'Nothing found between two markers'

print[str_found]

ĐẦU RA

thispointer.com

Vì vậy, trong mã và đầu ra ở trên, bạn có thể thấy điều đó bằng cách sử dụng lại. search[], chúng tôi đã tìm thấy thành công chuỗi con giữa hai điểm đánh dấu đã cho. Ở đây chúng ta cần tìm chuỗi nằm giữa hai dấu [; và /] trong biến sampleStr. Ngoài ra, chúng tôi đang mong đợi AttributeError nếu không tìm thấy gì giữa hai điểm đánh dấu đã cho. Vì vậy, nếu không tìm thấy gì giữa hai điểm đánh dấu đã cho [; và /] thì thay vì đưa ra AttributeError , nó sẽ trả về một thông báo không tìm thấy gì giữa hai điểm đánh dấu

Trích xuất chuỗi con giữa hai điểm đánh dấu bằng find[] và slice[]

Để trích xuất chuỗi con giữa hai điểm đánh dấu, chúng tôi sẽ sử dụng kết hợp phương thức find[] và phương thức cắt của Ngôn ngữ lập trình Python. Phương thức
find[] sẽ được sử dụng để tìm chuỗi giữa hai điểm đánh dấu. Nó trả về -1 nếu không tìm thấy gì. Sau đó, chúng tôi sẽ sử dụng phương thức slice[] để cắt chuỗi con ở giữa hai điểm đánh dấu đã cho. Hãy xem một ví dụ.

sampleStr = 'ilearncodingfrom;thispointer.com/articles'

# find[] method will search the 
# given marker and stores its index 
mk1 = sampleStr.find[';'] + 1

# find[] method will search the given 
# marker and sotres its index
mk2 = sampleStr.find['/', mk1]

# using slicing substring will be 
# fetched in between markers.
subString = sampleStr[ mk1 : mk2 ]

print[subString]

ĐẦU RA

thispointer.com

Trong mã và đầu ra của phương thức 2, bạn có thể thấy rằng sự kết hợp giữa phương thức slice[] và phương thức find[] đã được sử dụng để trích xuất chuỗi con giữa hai điểm đánh dấu. Chỉ mục của các điểm đánh dấu đã được lưu trữ trong var mk1 và mk2 bằng phương thức find[]. Sau đó, bằng cách cắt, chuỗi con đã được tìm nạp và in

Trích xuất chuỗi con giữa hai điểm đánh dấu bằng phương thức split[]

Phương thức tiếp theo mà chúng ta sẽ sử dụng là phương thức split[] của ngôn ngữ Lập trình Python, để trích xuất một chuỗi con đã cho giữa hai điểm đánh dấu. Phương thức split[] trong python tách chuỗi đã cho từ dấu tách đã cho và trả về danh sách các chuỗi con đã tách

Nó nhận hai tham số.
– dấu phân cách. dấu tách dùng để tách chuỗi. Nếu không có gì được cung cấp, thì dấu cách là dấu phân cách mặc định.
– chia tối đa. một số, chỉ định các phần tối đa mà chuỗi cần được tách. Giá trị mặc định là -1 chỉ định không có giới hạn.

Hãy xem một ví dụ về phương pháp này

THÍ DỤ

sampleStr = 'ilearncodingfrom;thispointer.com/articles'

# here ; and / are our two markers 
# in which string can be found. 
subStr = sampleStr.split[';'][1].split['/'][0]

print[subStr]

ĐẦU RA

thispointer.com

Trong đoạn mã trên, nó chỉ là mã một dòng bao gồm nhiều phương thức split[], qua đó chuỗi con được trích xuất giữa hai điểm đánh dấu. Phương thức split[] đầu tiên tách chuỗi từ điểm đánh dấu ';' và chỉ số 1 của nó đã được sử dụng trong đó phần còn lại của chuỗi nằm. Sau đó, một lần nữa phương thức split[] đã được sử dụng. Nhưng bây giờ dấu '/' là dấu phân cách và nó tách chuỗi con khỏi phần còn lại của chuỗi và chỉ mục 0 được in

Trích xuất chuỗi con giữa hai điểm đánh dấu bằng phương thức partition[]

Phương thức tiếp theo chúng ta sẽ sử dụng để trích xuất chuỗi con giữa hai điểm đánh dấu là phương thức partition[]. Phương thức partition[] tách chuỗi từ lần xuất hiện đầu tiên và trả về một bộ chứa ba mục

  • đầu tiên. chuỗi trước dấu phân cách đã cho
  • Thứ hai. dải phân cách
  • Ngày thứ ba. chuỗi sau dấu phân cách đã cho

Nó chỉ nhận một tham số là dấu phân cách

Hãy xem một ví dụ

THÍ DỤ

sampleStr = 'ilearncodingfrom;thispointer.com/articles'

before, mk1, after = sampleStr.partition[";"]
subStr, mk2, after = after.partition["/"]

print[subStr]

ĐẦU RA

thispointer.com

Trong mã và kết quả ở trên, bạn có thể thấy phương thức partition[] đã được sử dụng như thế nào để trích xuất chuỗi con giữa hai điểm đánh dấu.
đầu tiên chúng ta phân vùng chuỗi dựa trên điểm đánh dấu đầu tiên. Nó chia chuỗi thành ba phần tôi. e. chuỗi con trước thị trường đầu tiên, điểm đánh dấu đầu tiên và chuỗi con sau điểm đánh dấu đầu tiên. Chúng tôi đã chọn cái cuối cùng tôi. e. chuỗi con sau dấu đầu tiên. Sau đó, chúng tôi chia phần đó dựa trên điểm đánh dấu thứ hai và chọn mục nhập đầu tiên từ bộ trả về. Mục đầu tiên này biểu thị chuỗi sb trước điểm đánh dấu thứ hai. Vì vậy, kết quả là chúng tôi có chuỗi con giữa hai điểm đánh dấu đã cho.

Tóm lược

Trong bài này, chúng ta đã học về chuỗi con và dấu. Sau đó, chúng tôi cũng đã thảo luận về bốn phương pháp khác nhau mà qua đó chúng tôi có thể trích xuất chuỗi con giữa hai điểm đánh dấu. Phương pháp 1 và Phương pháp 3 có thể rất hữu ích vì phương pháp 1 xử lý lỗi tốt hơn. Trong khi đó cách 3 có cú pháp ngắn gọn dễ hiểu hơn. Mặt khác, tất cả các phương pháp trên đều rất hữu ích. Cố gắng tìm hiểu tất cả các phương pháp trên và chạy các mã này trên máy của bạn. Chúng tôi đã sử dụng Python 3. 10. 1 để viết mã ví dụ. Để kiểm tra phiên bản của bạn, hãy viết python –version trong thiết bị đầu cuối của bạn

Làm cách nào để trích xuất một chuỗi con từ danh sách các chuỗi trong Python?

Bạn có thể trích xuất một chuỗi con trong phạm vi start . Nếu start bị bỏ qua, phạm vi là từ đầu và nếu end bị bỏ qua, phạm vi sẽ kết thúc. Bạn cũng có thể sử dụng các giá trị âm. Nếu bắt đầu > kết thúc, không có lỗi nào xuất hiện và một ký tự trống '' được trích xuất.

Làm cách nào bạn có thể trích xuất một chuỗi con từ một chuỗi đã cho?

Bạn có thể trích xuất một chuỗi con từ một String bằng cách sử dụng phương thức substring[] của lớp String đối với phương thức này, bạn cần chuyển phần bắt đầu .

Làm cách nào để trích xuất chuỗi con trong Python bằng regex?

Chúng tôi sẽ sử dụng một biểu thức chính quy trong Python để trích xuất chuỗi con trong ví dụ này. Chúng tôi sẽ sử dụng gói tích hợp sẵn của Python cho các biểu thức chính quy. Hàm search[] trong đoạn mã trước tìm phiên bản đầu tiên của mẫu được cung cấp dưới dạng đối số trong văn bản đã truyền

Chủ Đề