Ruby を使用して csv ファイルから特定のデータを抽出しています。不要な文字を削除して、抽出された文字列をクリーンアップしたいと考えています。
これまでのところ、データを抽出する方法は次のとおりです。
CSV.foreach(data_file, :encoding => 'windows-1251:utf-8', :headers => true) do |row|
#create an array for each page
page_data = []
#For each page, get the data we are interested in and save it to the page_data
page_data.push(row['dID'])
page_data.push(row['xTerm'])
pages_to_import.push(page_data)
次に、抽出したデータを含むcsvファイルを出力します
抽出された出力は、csv データ ファイルとまったく同じです。
| ID | Term |
|-------|-----------------------------------------|
| 13241 | @@106#107#my@@106#term@@ |
| 13345 | @@63#hello@@ |
| 11436 | @@55#rock@@20#my@@10015#18#world@@ |
ただし、達成したい私の望ましい結果は次のとおりです。
| ID | Term |
|-------|-----------------------------------------|
| 13241 | my, term |
| 13345 | hello |
| 11436 | rock, my, world |
これを達成する方法について何か提案はありますか?
私が使用しているライブラリ:
require 'nokogiri'
require 'cgi'
require 'csv'