2010-05-29 3 views
0

USDA는 음식에 대한 일반적인 영양 정보 데이터베이스를 보유하고 있으며 자연스럽게 앱에서 사용하도록 훔칠 것입니다. 그러나 어쨌든 라인의 형식이 같다 다음 홀수 그 ~^이 값을 구분, 또한 머리글 행이 부족하지만 확인 먹으 렴으로텍스트 데이터베이스 파일의 파일 유형을 결정하기가 어렵습니다.

~01001~^~0100~^~Butter, salted~^~BUTTER,WITH SALT~^~~^~~^~Y~^~~^0^~~^6.38^4.27^8.79^3.87 
~01002~^~0100~^~Butter, whipped, with salt~^~BUTTER,WHIPPED,WITH SALT~^~~^~~^~Y~^~~^0^~~^6.38^4.27^8.79^3.87 
~01003~^~0100~^~Butter oil, anhydrous~^~BUTTER OIL,ANHYDROUS~^~~^~~^~Y~^~~^0^~~^6.38^4.27^8.79^3.87 
~01004~^~0100~^~Cheese, blue~^~CHEESE,BLUE~^~~^~~^~Y~^~~^0^~~^6.38^4.27^8.79^3.87 

, 나는에 다른 재료에서 알아낼 수있는 그들의 site : http://www.ars.usda.gov/Services/docs.htm?docid=8964

도움이 될 것입니다. 중요하다면 우리는이 데이터를 쿼리하기 위해 Ruby로 공개/무료 API를 만들고 있습니다.

또한이 질문을 제기하기가 힘들어서 커뮤니티 위키로 만들었습니다.

답변

1

^은 필드 구분 기호로, ~은 문자열 구분 기호로 사용됩니다. 일반적으로 나는 그 역할에 ",를 참조하고 기대하지만, 매우 드문 문자의 선택은 의미

Cheese, Bleu 

문자열 파서 모든 trippy받지 않습니다.

+0

그게 내가 생각하기에 너무. 문자열은 양쪽 끝에'~'로 둘러싸여 있지만 숫자는 그렇지 않습니다. –

3

이 같은 문자열 "에서 불행하게도 ~

^ 및 인용 문자로 ,에서 변경된 필드 분리 문자를 제외하고, 매우 표준 CSV (쉼표로 분리 된 값) 파일처럼 보이는, 내가 사용하는 라이브러리 추천 루비에 익숙하지 않은 해요 , 부 t는 펄에서 표준 CPAN 모듈의 보트로드입니다. CSV 리더의 필드 분리 기호와 인용 문자를 모두 구성 할 수 있습니다. Ruby에도 비슷한 기능이 있어야합니다. 그렇다면 운이 좋을 것입니다. !

관련 문제