Các nhóm được đặt tên trong phương thức search của Python

Để làm việc với các nhóm thuận tiện hơn, bạn có thể đặt tên cho chúng. Để làm điều này, trong tham số đầu tiên của phương thức search trước ký hiệu của biểu thức chính quy, bạn viết chuỗi '?P', sau đó trong dấu ngoặc nhọn chỉ định tên của nhóm.

Các nhóm như vậy có thể được lấy bằng phương thức groupdict. Nó sẽ trả về chúng dưới dạng từ điển, trong đó khóa là tên nhóm, còn giá trị là chuỗi con nằm trong đó.

Hãy xem xét cách làm việc với các nhóm được đặt tên qua một ví dụ. Giả sử chúng ta có chuỗi:

pythontxt = '123 456'

Hãy tạo hai nhóm cho nó, chúng sẽ được đặt tên lần lượt là 'num1' và 'num2':

pythonres = re.search('(?P<num1>\d+)\s(?P<num2>\d+)', txt)

Bây giờ hãy in các nhóm của chúng ta bằng phương thức groupdict:

pythonprint(res.groupdict()) # sẽ in ra {'num1': '123', 'num2': '456'}
Задание 1

Cho một chuỗi thời gian:

pythontxt = '12:59:59'

Hãy đặt giờ, phút và giây vào các nhóm được đặt tên riêng biệt.

Задание 2

Cho một chuỗi:

pythontxt = 'aaa bbb 123 456'

Hãy đặt các chuỗi con 'aaa' và 'bbb' vào các nhóm được đặt tên riêng biệt.

Задание 3

Cho một chuỗi:

pythontxt = 'alex23'

Hãy đặt tên và tuổi của người dùng vào các nhóm được đặt tên riêng biệt.