■ 파싱(Parsing)
- 문장이 이루고 있는 구성 성분을 분해하고 분해된 성분의 위계 관계를 분석해 구조를 결정하는 것
- 데이터를 분해하고 분석하여 원하는 형태로 조립하고 다시 빼내는 프로그램
- 웹상에서 주어진 정보를 내가 원하는 형태로 가공하여 서버에서 불러들이는 것
- 어떤 페이지(문서, html 등)에서 내가 원하는 데이터를 특정 패턴이나 순서로 추출해 가공하는 것
- 파서(parser)는 컴파일의 일부로서 원시 프로그램의 명령문이나 온라인 명령문, HTML 문서 등에서 Markup Tag 등을 입력으로 받아들여서 구문을 해석할 수 있는 단위와 여러부분으로 분할해주는 역할을 하는데, 이러한 파서(parser) 역할을 하는 컴퓨터가 구문 트리(parser tree)로 재구성하는 구문 분석 과정
■ 파서(Parser)
- 컴파일러의 일부
- 원시 프로그램 명령문이나 온라인 명령문, HTML 문서 등에서 Markup Tag 등을 입력(흔히 텍스트)으로 받아들여서 구분을 해석할 수 있는 단위로 여러 부분으로 해석해 주는 역할을 함
- Compiler나 Interpreter에서 원시 프로그램을 읽어 들여, 그 문장이 구조를 알아내는 파싱을 행하여 주는 프로그램
- 다른 언어에서 해석하기 쉽게 작은 요소로 데이터를 분해하는 컴파일러나 인터프리터 컴포넌트
- 토큰의 시퀀스 형태의 입력, 명령어와 상호작용 또는 프로그램 지시를 받아 프로그램의 다른 컴포넌트에서 사용 가능한 형태로 분해하는 것
즉, 파싱은 분해하고 분석하여 목적에 맞게 구조를 결정하는 것을 말한다. 파싱하는 역할을 파서라고 부른다.
■ 파싱(Parsing) 과정/방법
(1) 어휘 분석(Lexical Analysis)
- 입력된 문자열 스트림으로부터 토큰을 생성하기 위해 사용됨
- 작은 컴포넌트들을 의미있는 단위로 분해하기 위함
(2) 구문 분석(Syntactic Analysis)
- 생성된 토큰이 의미가 있는 형태인지 확인
- 문맥-자유 문법(context-free grammar)를 사용함
- 의미를 형성하고 토큰이 있어야 할 순서를 정의함
(3) 의미 분석(Semantic Analysis)
- 파싱의 최종 단계
- 의미있고 유효한 표현들이 정해짐
'프로그래밍 > IT지식' 카테고리의 다른 글
[네트워크] 허브, 스위치, 라우터, 공유기 (0) | 2024.06.24 |
---|---|
테더링이란? (0) | 2024.06.24 |
마크업 언어란? xml 파일이란? (0) | 2024.06.24 |
URI, URL, URN 차이점 (0) | 2024.06.24 |
클라우드(Cloud)란? (0) | 2024.06.23 |