回答編集履歴

1

2024/02/13 14:57

投稿

melian
melian

スコア19974

test CHANGED
@@ -1,20 +1,16 @@
1
1
  以下は jq コマンドを利用する場合です。
2
2
 
3
3
  ```jq
4
- jq -r -n --slurpfile cat <(echo {; sed 1d cats.js) '
4
+ jq -r -n --slurpfile cats <(echo {; sed 1d cats.js) '
5
5
  (
6
+ $cats[] | .categories |
6
- $cat[] | .categories | map(select(.lists_id != "") |
7
+ map(select(.lists_id != "") | .c as $c |
7
- .c as $c | (.lists_id | split(" ")) | map({idx: ., value: $c})) |
8
+ .lists_id | split(" ") | map({idx: ., category: $c})) |
8
- flatten(1)
9
+ flatten
9
10
  ) as $catg |
10
11
  INDEX($catg[]; .idx) as $catg_idx |
11
- inputs | .lists[] | $catg_idx[.id] as $c |
12
+ inputs | .lists[] |
12
- [.id, .q, .a, if $c then $c.value else "NULL" end] | join(",")
13
+ [.id, .q, .a, $catg_idx[.id].category // "NULL"] | join(",")
13
14
  ' <(echo {; sed 1d list.js)
15
+ ```
14
16
 
15
- # 1,問い合わせ1,回答1,カテゴリー3
16
- # 2,問い合わせ2,回答2,カテゴリー1
17
- # 3,問い合わせ3,回答3,カテゴリー1
18
- # 4,問い合わせ4,回答4,NULL
19
- # 5,問い合わせ5,回答5,カテゴリー4
20
- ```