[過去ログ] Excel VBA 質問スレ Part69 (1002レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
941
(2): (ワッチョイ 692c-6NWR) 2021/03/16(火)17:31 ID:tUVUKdZi0(1) AAS
>>932
Ruby で、CSV ファイルでやってみた

require 'csv'

tmp_hash = { }

result_ary = CSV.read( "input.csv" ) # 2次元配列

result_ary.each do | row | # 1行ずつ処理する
if tmp_hash.has_key? row[ 0 ] # 既に、その数字が存在すれば
# 文字列が存在しない時だけ、その文字列を追加する
tmp_hash[ row[ 0 ] ][ row[ 1 ] ] = true unless
tmp_hash[ row[ 0 ] ].has_key? row[ 1 ]
省14
989: 941 (ワッチョイ 692c-6NWR) 2021/03/18(木)13:11 ID:VjRMlHUp0(1/2) AAS
>>941
11111,A子
11112,B子

Ruby で、こういうCSV ファイルを処理した場合、
辞書は、こうなる。
値のtrue に意味はない

{"11111"=>{"A子"=>true}, "11112"=>{"B子"=>true},
"11113"=>{"C子"=>true, "D子"=>true, "E子"=>true},
"11114"=>{"F子"=>true}, "11115"=>{"E子"=>true}}

F子は、重複しない
990: 941 (ワッチョイ 692c-6NWR) 2021/03/18(木)13:17 ID:VjRMlHUp0(2/2) AAS
ただし、このファイルを、1パスでは処理できない

11113,C子
11113,D子
11113,E子

"11113"=>{"C子"=>true, "D子"=>true, "E子"=>true},

C子 を読み込んだ時点で、その行よりも後ろにある、
D子・E子 の情報を取得できないから

だから、>>941
では、データ配列を2回読んでいる
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.032s