Ruby를 사용하여 CSV 파일에서 특정 데이터를 추출하고 있으며 원하지 않는 문자를 제거하여 추출 된 문자열을 정리하려고합니다.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)
I 출력 추출 된 데이터
는 CSV 데이터 파일을 그대로 추출 출력은 정확히로 csv 파일 :
| ID | Term |
|-------|-----------------------------------------|
| 13241 | @@106#107#[email protected]@106#[email protected]@ |
| 13345 | @@63#[email protected]@ |
| 11436 | @@55#[email protected]@20#[email protected]@10015#18#[email protected]@ |
그러나, 나는이 달성하고자하는 내 원하는 결과는 다음과 같습니다
| ID | Term |
|-------|-----------------------------------------|
| 13241 | my, term |
| 13345 | hello |
| 11436 | rock, my, world |
어떻게해야합니까? 임 사용
라이브러리 : 나는 당신의 기간이 bookended하게 분리 @@
에 의해 #
에 의해 분리 된 실제 기간 뒤에 하나 개 이상의 숫자로 구성되어 있으리라 믿고있어
require 'nokogiri'
require 'cgi'
require 'csv'
regexp가 문제를 해결하기 좋은 후보인 것 같습니다. –
시도해 보셨습니까? 그것은 우리에게 더 낫고, 우리가 당신에게 시도한 것을 보여주고, 무엇이 잘못되었는지 알려주고, 누군가가 당신이하고있는 것과 전혀 무관 한 무언가를 쓰는 대신 그것을 비틀 수 있습니다. 그것을 코드에 넣으려고합니다. –
루비를 처음 사용하는 경우 정직하게 시작해야할지 모르겠다! –