Flags (modifiers) thay đổi hành vi matching của regex. Truyền vào tham số flags của các hàm re hoặc dùng (?flag) trong pattern.
| Flag | Tên | Chức năng |
|---|---|---|
re.I / re.IGNORECASE | Ignore Case | Khớp không phân biệt hoa/thường |
re.M / re.MULTILINE | Multiline | ^ khớp đầu dòng, $ khớp cuối dòng (không chỉ đầu/cuối chuỗi) |
re.S / re.DOTALL | Dot All | . khớp mọi ký tự kể cả newline |
re.L / re.LOCALE | Locale | \w, \b, \B phụ thuộc locale hiện tại (ít dùng) |
re.U / re.UNICODE | Unicode | \w, \W, \b, \B theo Unicode (mặc định Py3) |
re.X / re.VERBOSE | Verbose | Cho phép whitespace/comment trong pattern để đọc dễ |
Cách dùng
# Truyền flags
re.search(pattern, string, re.I | re.M)
# Inline flag trong pattern
re.search(r'(?im)^pattern$', string)
# Verbose pattern (đọc dễ)
pattern = r'''
\d+ # số
\s+ # khoảng trắng
\w+ # từ
'''
re.search(pattern, string, re.X)