Computer >> Máy Tính >  >> Lập trình >> Python

Sự khác biệt giữa các phương thức re.match (), re.search () và re.findall () trong Python là gì?


re.match (), re.search () và re.findall () là các phương thức của mô-đun Python re.

Phương thức re.match ()

Phương thức re.match () tìm kết quả khớp nếu nó xuất hiện ở đầu chuỗi. Ví dụ:gọi match () trên chuỗi ‘TP Tutorials Point TP’ và tìm kiếm một mẫu ‘TP’ sẽ khớp.

Ví dụ

import re
result = re.match(r'TP', 'TP Tutorials Point TP')
print result.group(0)

Đầu ra

TP

Phương thức re.search ()

Phương thức re.search () tương tự như re.match () nhưng nó không giới hạn chúng ta chỉ tìm thấy các kết quả phù hợp ở đầu chuỗi.

Ví dụ

import re
result = re.search(r'Tutorials', 'TP Tutorials Point TP')
print result.group(0)

Đầu ra

Tutorials

Phương thức re.findall ()

re.findall () giúp lấy danh sách tất cả các mẫu phù hợp. Nó tìm kiếm từ đầu hoặc cuối của chuỗi nhất định. Nếu chúng ta sử dụng phương thức findall để tìm kiếm một mẫu trong một chuỗi đã cho, nó sẽ trả về tất cả các lần xuất hiện của mẫu đó. Trong khi tìm kiếm một mẫu, bạn nên sử dụng re.findall () luôn, nó hoạt động giống như re.search () và re.match () cả hai.

Ví dụ

import re
result = re.search(r'TP', 'TP Tutorials Point TP')
print result.group()

Đầu ra

TP