Tablora · 라이브러리
CSV 필드 안의 따옴표 읽기
CSV에서는 따옴표로 묶인 필드 안의 큰따옴표 두 개가 따옴표 하나를 뜻합니다. She said "hello"를 읽는 방식과 백슬래시가 안 되는 이유를 알아보세요.
CSV가 값 안에 따옴표를 쓰는 방법
따옴표가 들어 있는 CSV 필드는 전체를 따옴표로 묶어야 하고, 안쪽의 따옴표는 각각 두 번 씁니다. 그래서 셀 텍스트 She said "hello"는 파일에 "She said ""hello"""로 저장됩니다. 바깥 따옴표는 구문이고, 안쪽에서 두 번 겹친 쌍은 각각 글자로서의 따옴표 하나를 나타냅니다.
어떤 프로그램은 프로그래밍 언어에서 빌려 온 방식으로 따옴표 앞에 백슬래시를 씁니다. 구조 확인 도구는 그 방식이 아니라 CSV 규칙을 따르므로, 백슬래시로 이스케이프한 따옴표는 이스케이프로 인정되지 않습니다.
Poster 행 확인하기
이 페이지의 예시는 머리글 item,note와, note가 "She said ""hello"""인 레코드 하나로 이루어져 있고 필드 구분 기호는 쉼표입니다. 구조 확인 도구는 2행 2열로 보고합니다. 2행 2열은 She said "hello"이며, hello 앞뒤에 따옴표가 정확히 하나씩 있습니다.
미리 보기에서 hello 양쪽에 따옴표가 두 개씩 보인다면, 원본에서 그 필드가 따옴표로 묶이지 않았고 텍스트가 애초에 올바른 CSV가 아닐 가능성이 큽니다.
구문 분석되지 않는 입력
- 따옴표로 묶이지 않은 필드 중간의 따옴표, 예를 들어 바깥 따옴표 없는 She said "hi"는 거부됩니다. 도구는 필드가 어디서 끝나는지 추측하지 않고 ‘입력한 값을 확인하고 다시 시도하세요.’라는 메시지를 표시합니다.
- 따옴표 앞의 백슬래시는 이스케이프가 되지 않으므로, 백슬래시 이스케이프로 내보낸 텍스트도 같은 이유로 거부됩니다.
- "hello"x처럼 닫는 따옴표 뒤에 문자가 있어도 거부됩니다.
- 구분 기호 감지가 선택되어 있으면 구조 확인 도구는 쉼표, 세미콜론, 탭, 세로 막대를 시도하고, 그중 어느 것으로도 텍스트를 구문 분석할 수 없을 때만 오류를 보고합니다.
- 따옴표로 묶인 필드는 구분 기호 바로 뒤나 줄의 시작에서 시작해야 하므로, 여는 따옴표 앞에 공백이 있어도 거부됩니다.
따옴표가 든 텍스트를 고치고 내보내기
- 원래 내보내기 파일에서 그 필드를 찾고, 그것을 만든 소프트웨어에 표준 CSV 옵션이 있는지 확인합니다.
- 직접 고친다면 필드 전체를 따옴표로 묶고 안쪽의 따옴표를 모두 두 번 씁니다.
- 다시 계산을 누르고 셀에 따옴표가 하나씩 보이는지 확인합니다.
- 미리 보기가 맞으면 다운로드 (CSV)를 사용합니다. 다운로드는 같은 겹쳐 쓰기 규칙으로 따옴표를 다시 기록하므로 다른 프로그램에서도 읽을 수 있습니다.
앱 내보내기의 따옴표
Tablora 앱의 CSV 내보내기도 셀에 따옴표, 쉼표, 줄바꿈이 있으면 같은 규칙을 따릅니다. 셀을 따옴표로 묶고 안쪽 따옴표를 두 번 씁니다. XLSX 내보내기에서는 따옴표가 단순히 셀 텍스트의 일부이므로, 이스케이프가 눈에 보이지 않습니다.
입력값
- 표 텍스트
- item,note Poster,"She said ""hello"""
- 필드 구분 기호
- ,
결과
- 행 수
- 2
- 열 수
- 2
| item | note |
|---|---|
| Poster | She said "hello" |
- 너비가 다른 행
- 0