> 웹 프론트엔드 > JS 튜토리얼 > JavaScript에서 인용 필드 안에 쉼표가 있는 CSV 문자열을 구문 분석하는 방법은 무엇입니까?

JavaScript에서 인용 필드 안에 쉼표가 있는 CSV 문자열을 구문 분석하는 방법은 무엇입니까?

DDD
풀어 주다: 2024-12-03 00:27:15
원래의
273명이 탐색했습니다.

How to Parse a CSV String with Commas Inside Quoted Fields in JavaScript?

이 JavaScript 스니펫을 사용하면 인용된 필드 내의 쉼표를 무시하면서 데이터 내에 쉼표가 있는 CSV 문자열을 구문 분석할 수 있습니다.

const parseCSV = (csvString) => {
  const rows = csvString.split("\n");
  const result = [];
  for (const row of rows) {
    const values = [];
    let currentField = "";
    let inQuotes = false;
    for (const char of row) {
      if (char === '"' && currentField.length === 0) {
        inQuotes = !inQuotes;
      } else if (char === "," && !inQuotes) {
        values.push(currentField);
        currentField = "";
      } else {
        currentField += char;
      }
    }
    if (currentField.length > 0) {
      values.push(currentField);
    }
    result.push(values);
  }
  return result;
};

const csvString = 'string, duppi, du, 23, lala';
console.log(parseCSV(csvString));
로그인 후 복사

이 솔루션은 CSV 문자열을 문자별로 검사하여 쿼리합니다. 쉼표가 감지되고 문자열이 인용된 필드 안에 있지 않을 때마다 새 필드가 생성됩니다. 필드 시작 부분에 큰따옴표가 나타나면 이는 인용된 필드의 시작을 나타냅니다. 인용된 필드 밖의 또 다른 큰따옴표는 해당 필드의 끝을 나타냅니다. 이 기술은 값을 지속적으로 검사하여 인용된 영역을 고려하여 CSV 문자열을 개별 필드로 정확하게 분할합니다.

위 내용은 JavaScript에서 인용 필드 안에 쉼표가 있는 CSV 문자열을 구문 분석하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿