[過去ログ] Regular Expression(正規表現) Part15 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
26(5): 2019/10/07(月)03:37 ID:21LgfgEW(1/3) AAS
Ruby で、下のコードを、script.rb に書いて、
入力ファイル名を、input.csv とすると、
端末で、ruby script.rb input.csv と入力する。
つまり、ruby スクリプトファイル名 入力ファイル名
require 'csv'
# 引数はファイル名
CSV.filter( File.open( ARGV[ 0 ] ) ) do |row| # 1行ずつ処理する
省2
27: 26 2019/10/07(月)04:17 ID:21LgfgEW(2/3) AAS
>>26
修正
tr ではなく、tr! で、直接レシーバー(文字列)を変更できる
>row[ 3 ] = row[ 3 ].tr( ",", "、" ) # 列4
row[ 3 ].tr!( ",", "、" ) # 列4
29(1): あ 2019/10/07(月)21:08 ID:cbxlkLVD(1/2) AAS
>>26
カンマでカラム分割してるからrow[3]にはカンマが含まれないよ
ARGF.each do |line|
line.match(/((?:.+?,){3})(.+)((?:,.+){1})/) do |match|
puts match[1] + match[2].gsub(",", "、") + match[3]
end
end
省2
32(1): 26 2019/10/07(月)23:29 ID:21LgfgEW(3/3) AAS
>>29
>>26 は、CSV モジュールを使っているから、
列をクォートする事で、列内に、カンマが存在できる!
入力ファイル
a,b,c,"あ,い,う",d
require 'csv'
# 引数は入力ファイル名
省6
34: 26 2019/10/08(火)00:22 ID:cRqslSem(1/2) AAS
クォートしてなかったら、そもそも、CSV にならない!
列内に、カンマが含められないから、列数も変動する
36: 26 2019/10/08(火)02:16 ID:cRqslSem(2/2) AAS
バグのほとんどが設計段階で生じる、典型的な例かw
バグを設計段階で修正せず、実装段階で修正しようとするから、
ますますダメになるという例w
SE・上流工程が馬鹿だと、こういうのが多いw
Ruby などで実装した事がないからだろうw
ダメな事をやる香具師が、あまりにも多いw
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.031s