import json import re def process(input_strings: list) -> list: """解析 JSON 数组,提取用户指定的字段并按模板拼接""" json_str, template = input_strings[0], input_strings[1] try: # 解析 JSON data = json.loads(json_str) if not isinstance(data, dict) or "data" not in data or not isinstance(data["data"], list): return ["错误:JSON 格式无效,缺少 'data' 数组或不是数组"] # 提取模板中的字段名(形如 $field$) fields = re.findall(r'\$([^\$]+)\$', template) if not fields: return ["错误:模板中未找到有效字段(格式如 $field$)"] # 拼接结果 result = [] for item in data["data"]: # 替换模板中的字段 formatted = template for field in fields: # 获取字段值,缺失时用 "N/A" value = str(item.get(field, "N/A")) formatted = formatted.replace(f"${field}$", value) result.append(formatted) # 返回拼接字符串 return [",".join(result)] if result else ["无有效数据"] except json.JSONDecodeError: return ["错误:无效的 JSON 字符串"] except Exception as e: return [f"错误:{str(e)}"]