如何提取单行JSON中ma-name与emailID的值并逐行并列输出?
提取JSON中指定字段的实现方法
一、命令行工具 jq(轻量高效,推荐)
示例单行JSON输入:
[{"ma-name":"张三","emailID":"zhangsan@example.com"},{"ma-name":"李四","emailID":"lisi@example.com"},{"ma-name":"王五","emailID":"wangwu@example.com"}]
执行以下命令即可完成提取与格式化输出:
echo '[{"ma-name":"张三","emailID":"zhangsan@example.com"},{"ma-name":"李四","emailID":"lisi@example.com"},{"ma-name":"王五","emailID":"wangwu@example.com"}]' | jq -r '.[] | "\(.ma-name) \(.emailID)"'
命令说明:
-r:指定输出原始字符串(避免JSON格式的引号包裹).[]:遍历JSON数组中的每一个对象"\(.ma-name) \(.emailID)":将两个字段的值拼接为字符串后逐行输出
示例输出:
张三 zhangsan@example.com 李四 lisi@example.com 王五 wangwu@example.com
二、Python 脚本(适合需自定义逻辑的场景)
如果需要通过代码自定义处理逻辑,可使用以下Python脚本:
import json # 输入的单行JSON文本 json_content = '[{"ma-name":"张三","emailID":"zhangsan@example.com"},{"ma-name":"李四","emailID":"lisi@example.com"},{"ma-name":"王五","emailID":"wangwu@example.com"}]' # 解析JSON数据 data_list = json.loads(json_content) # 遍历并输出目标字段 for item in data_list: print(f"{item['ma-name']} {item['emailID']}")
运行脚本后,输出结果与使用jq工具的结果完全一致。
内容的提问来源于stack exchange,提问作者Surendar
相关产品推荐
相关产品推荐

