Hàm này tìm kiếm lần xuất hiện đầu tiên của mẫu biểu thức chính quy pattern trong string với các flags tùy chọn.
Cú pháp
Cú pháp cho hàm này:
re.search(pattern, string, flags=0)
Mô tả các tham số:
| STT | Tham số & Mô tả |
|---|---|
| 1 | pattern Đây là biểu thức chính quy cần khớp. |
| 2 | string Đây là chuỗi sẽ được tìm kiếm để khớp mẫu ở đầu chuỗi. |
| 3 | flags Bạn có thể chỉ định các cờ khác nhau sử dụng OR bitwise (|). Đây là các bộ chỉnh sửa, được liệt kê trong bảng dưới đây. |
Hàm re.search trả về đối tượng match khi thành công, None khi thất bại. Chúng ta sử dụng hàm group(num) hoặc groups() của đối tượng match để lấy biểu thức khớp.
| STT | Phương thức đối tượng Match & Mô tả |
|---|---|
| 1 | group(num=0) Trả về toàn bộ khớp ( hoặc nhóm con cụ thể num ) |
| 2 | groups() Trả về tất cả các nhóm con khớp trong một tuple (rỗng nếu không có) |
Ví dụ
#!/usr/bin/python
import re
line = "Cats are smarter than dogs"
searchObj = re.search(r'(.*) are (.*?) .*', line, re.M|re.I)
if searchObj:
print "searchObj.group() : ", searchObj.group()
print "searchObj.group(1) : ", searchObj.group(1)
print "searchObj.group(2) : ", searchObj.group(2)
else:
print "Nothing found!!"
Kết quả
Khi mã trên được thực thi, nó cho kết quả sau:
searchObj.group() : Cats are smarter than dogs searchObj.group(1) : Cats searchObj.group(2) : smarter