Tôi vẫn còn tương đối mới để regex. Tôi đang cố gắng tìm chuỗi văn bản ngắn nhất phù hợp với một mẫu cụ thể, nhưng đang gặp sự cố nếu mẫu ngắn nhất là chuỗi con của một kết hợp lớn hơn. Ví dụ:Làm cách nào để tìm kết quả trùng lặp ngắn nhất bằng các cụm từ thông dụng?
import re
string = "A|B|A|B|C|D|E|F|G"
my_pattern = 'a.*?b.*?c'
my_regex = re.compile(my_pattern, re.DOTALL|re.IGNORECASE)
matches = my_regex.findall(string)
for match in matches:
print match
in:
A|B|A|B|C
nhưng tôi muốn nó trở lại:
A|B|C
Có cách nào để làm điều này mà không cần phải lặp qua mỗi trận đấu để xem liệu nó có chứa một chuỗi con phù hợp không?
Vui lòng kiểm tra câu trả lời của Tim; đó là câu chuyện ngắn gọn nhất, có lẽ nên được đánh dấu là câu trả lời cho câu hỏi của bạn. – tzot