【.cmd】 バッチファイルスクリプト %15 【.bat】 (794レス)
前次1-
抽出解除 レス栞

リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
266
(1): 2023/05/06(土)17:23 ID:gRoxw4m5(1/3) AAS
jqコマンドってどっかにスレないかな
cmdでバッチ作って動かしてるんだけど
jsonで
"characterID": 1,"Level": 50, "Status": {~
"characterID": 1,"Level": 100, "Status": {~
"characterID": 2,"Level": 50, "Status": {~
"characterID": 3,"Level": 50, "Status": {~
"characterID": 3,"Level": 100, "Status": {~
みたいにキャラごとにレベル50と100があったり50しかない場合があったりするんだけど
キャラごとに100があったらそれだけなかったら50を拾うみたいな条件で引っこ抜きたいんだけど上手くいかないので何かいい方法ないかなって探してます
何かいい方法ないでしょうか
287: 2023/05/10(水)03:43 ID:fIRqc6o3(1) AAS
>>266
Ruby なら、

require 'json'

# 改行を削除する。削除しなくても同じ結果
input_json_str = <<'JSON'.delete( "\n" )
[{"ID": 1,"Level": 50, "Status": {"idx":1}},
{"ID": 1,"Level": 100, "Status": {"idx":2}},
{"ID": 2,"Level": 50, "Status": {"idx":3}},
{"ID": 3,"Level": 50, "Status": {"idx":4}},
{"ID": 3,"Level": 100, "Status": {"idx":5}}]
JSON

input_json_obj = JSON.parse( input_json_str )

# ID でグループ化して、最大Level のものを取得する
result = input_json_obj.group_by { |hash| hash[ "ID" ] }.map do |row|
row[ 1 ].max_by { |hash| hash[ "Level" ] }
end

p result

出力
[ {"ID"=>1 "Level"=>100 "Status"=>{"idx"=>2}},
{"ID"=>2 "Level"=>50 "Status"=>{"idx"=>3}},
{"ID"=>3 "Level"=>100 "Status"=>{"idx"=>5}} ]
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ

ぬこの手 ぬこTOP 0.031s