【发布时间】:2019-09-18 09:26:43
【问题描述】:
只有当人有英语科目分数时,我如何才能打印带有分数的名字。
换句话说,grep 为 2 个模式,只有在第 2 个模式匹配时才打印第一个和第二个模式。
输入:
{
"sessionId": "000001",
"name": "ABC",
"Age": "21",
"Score": {
"English": "A+",
"Mathematics": "B-",
"String Theory": "C+"
}
},
{
"sessionId": "000001",
"name": "CDE",
"Age": "21",
"Score": {
"English": "A-",
"German": "B-",
"French": "C+"
}
},
{
"sessionId": "000001",
"name": "EFG",
"Age": "21",
"Score": {
"German": "A+",
"Mathematics": "B-",
"Machine Learning": "C+"
}
},
输出
"name": "ABC",
"English": "A",
"name": "CDE",
"English": "A",
【问题讨论】:
-
这当然可以用 sed 来完成,但我怀疑 awk 解决方案不会那么神秘......
-
你的意思是从分数中省略 +/-?
标签: awk sed text-processing