import re def parse_folder_name(folder_name: str): """ 解析格式: 1. ('129873', {'us'}, 'Swadloon'), 2 2. ('2150297', {'us'}, 'Grimsley’s Move'), None """ # 这里的正则匹配最后的 , 之后的所有内容作为 card_num pattern = r"\('(.+?)', \{'(.+?)'\}, '(.+?)'\),\s*(.+)" match = re.search(pattern, folder_name) if match: return { "source_id": match.group(1), "lang": match.group(2), "card_name": match.group(3), # 这里获取到的可能是 "2" 或者 "None" 或者 "004" "card_num": match.group(4).strip() } return None