Có cách nào để sử dụng cùng tên trong nhóm có tên regex trong python không? ví dụ: (?P<n>foo)|(?P<n>bar)
.python regex: tên trùng lặp trong các nhóm có tên
Sử dụng trường hợp: tôi đang cố gắng để nắm bắt type
và id
với regex này:
/(?=videos)((?P<type>videos)/(?P<id>\d+))|(?P<type>\w+)/?(?P<v>v)?/?(?P<id>\d+)?
từ chuỗi này:
- /kênh/v/123
- /ch/v/41.500.082
- /channel
- /videos/41500082
Đối với bây giờ tôi nhận được lỗi: redefinition of group name 'id' as group 6; was group 3
Một nhóm bị bắt có tên là duy nhất, trừ khi bạn đang sử dụng một thiết lập lại chi nhánh chỉ được hỗ trợ bởi mô đun 'regex' mới hơn:' (? | ...) '- bạn có bản trình diễn trực tuyến về những gì bạn đang cố gắng đạt được không? Ngoài ra, một regex có điều kiện hoặc lookarounds rất có thể sẽ đủ. – Jan