[過去ログ] 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