본문 바로가기
Java

Parsing(파싱)

by 개발자공부 2024. 6. 10.

Parsing

컴퓨터 과학에서 입력된 데이터를 해석하고 구조화하는 과정이다.

일반적으로 텍스트 데이터를 특정 형식으로 변환하거나 텍스트 데이터에서 유용한 정보를 추출하는 데 사용된다. 파싱을 통해 원시 데이터를 컴퓨터가 이해하고 처리할 수 있는 구조로 변환할 수 있다.

 

주요 개념

● 구문 분석(Syntax Analysis)

텍스트 데이터를 구문 규칙에 따라 해석하는 과정이다.

주로 프로그래밍 언어의 컴파일러나 인터프리터에서 소스 코드를 구문 트리(Syntax Tree)로 변환할 때 사용된다.

 

데이터 형식 변환

텍스트 데이터를 특정 형식(예: JSON, XML)으로 변환하여 구조화된 데이터를 생성한다.

예를 들어, JSON형식의 문자열을 자바 객체로 변환하거나 XML데이터를 객체로 변환하는 과정이 포함된다.

 

정보 추출

텍스트 데이터에서 유용한 정보를 추출하여 특정 목적에 맞게 사용하는 과정이다.

예를 들어, 웹 페이지에서 특정 정보를 추출하는 웹 스크래핑(Web Scraping)이 포함된다.

 

JSON Parsing

JSON(JavaScript Object Notation)은 경량 데이터 교환 형식으로, 자바스크립트 객체 표기법을 기반으로 한다. JSON 파싱은 JSON 형식의 문자열을 프로그래밍 언어에서 사용할 수 있는 객체로 변환하는 과정이다.

{
    "name": "John Doe",
    "age": 30,
    "email": "johndoe@example.com"
}

 

배열(Array)

대괄호[ ]로 둘러싸인 값의 순서있는 목록이다.

각 값은 모든 JSON 데이터 타입이 될 수 있다.

[
  "apple",
  "banana",
  "cherry"
]

 

문자열(String)

큰 따옴표 " "로 둘러싸인 유니코드 문자이다.

이스케이프 시퀀스(\n, \t, \" 등)를 지원한다.

String은 불변이다.

 

숫자(Number)

정수 또는 부동 소수점 숫자이다.

10진수 형식만 지원하며, 8진수 및 16진수는 지원하지 않는다.

 

불리언(Boolean)

true 또는 false 값을 가진다.

 

널(Null)

null 값을 가진다.


Json Array 형식 예시

[
	{
	  "name": "John Doe",
	  "age": 30,
	  "isStudent": false
	},
	{
	  "name": "John Doe",
	  "age": 30,
	  "isStudent": false
	}
]

 

Json Object 형식 예시

{
  "name": "John Doe",
  "age": 30,
  "isStudent": false,
  "scores": [95, 87, 92],
  "address": {
    "street": "123 Main St",
    "city": "Anytown",
    "zip": "12345"
  },
  "courses": [
    {
      "name": "Math",
      "grade": "A"
    },
    {
      "name": "English",
      "grade": "B"
    }
  ],
  "graduationYear": null
}