[過去ログ] Regular Expression(正規表現) Part15 (1002レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
29
(1): [sage] 2019/10/07(月)21:08 ID:cbxlkLVD(1/2)
>>26
カンマでカラム分割してるからrow[3]にはカンマが含まれないよ

ARGF.each do |line|
line.match(/((?:.+?,){3})(.+)((?:,.+){1})/) do |match|
puts match[1] + match[2].gsub(",", "、") + match[3]
end
end

こういうのって力技で変換するよりも
CSV生成側でクウォートし直したほうがいいよね
32
(1): 26 [sage] 2019/10/07(月)23:29 ID:21LgfgEW(3/3)
>>29
>>26 は、CSV モジュールを使っているから、
列をクォートする事で、列内に、カンマが存在できる!

入力ファイル
a,b,c,"あ,い,う",d

require 'csv'

# 引数は入力ファイル名
CSV.filter( File.open( ARGV[ 0 ] ) ) do |row| # 1行ずつ処理する
p row[ 3 ] #=> "あ,い,う"
row[ 3 ].tr!( ",", "、" ) # 列4
end

出力
a,b,c,あ、い、う,d
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.039s