Các nhóm (capture groups) thông qua phương thức group trong phương thức search của Python
Một cách tiếp cận thay thế để làm việc với các nhóm
là sử dụng phương thức group.
Tham số của nó chỉ định số thứ tự của nhóm
cần được xuất ra. Nếu chỉ định 0
hoặc để trống tham số,
thì toàn bộ chuỗi con khớp với
biểu thức chính quy sẽ được trả về.
Giả sử chúng ta có chuỗi:
txt = '123 456 789'
Hãy trích xuất từ nó kết quả khớp đầu tiên
với các chữ số, được xác định bởi biểu thức chính quy trong phương thức search.
Sau đó đặt chuỗi con vào ba nhóm,
mỗi nhóm sẽ được xuất ra bằng phương thức group:
res = re.search('(\d+)(\d+)(\d+)', txt)
print(res.group(0)) # sẽ xuất ra '123'
print(res.group(1)) # sẽ xuất ra '1'
print(res.group(2)) # sẽ xuất ra '2'
print(res.group(3)) # sẽ xuất ra '3'
Cho chuỗi:
txt = 'username:john'
Hãy đặt 'username:' vào nhóm thứ nhất,
và 'john' - vào nhóm thứ hai. Xuất tất cả
các nhóm ra console.
Cho chuỗi:
txt = '123 aaabbbccc'
Hãy phân tách tất cả các ký tự chữ cái vào ba
nhóm sao cho chuỗi con bao gồm
chữ cái 'a' rơi vào nhóm thứ nhất,
'b' - vào nhóm thứ hai, 'c' - vào
nhóm thứ ba. Xuất tất cả các nhóm ra console.