1. 확장열 (Escape Sequence)
ㅇ 문자열 안에서 특별한 의미를 갖는 문자열
- 일련의 문자열 중에서,
- `화면제어용,장치제어용 문자`가 `정보표현용 문자`와 혼란 없이 함께 있을 수 있도록,
- 제어용 문자를, 규칙에 따라 (구분이 가능하게), 확장시키는 문자열
2. 탈출 문자, 탈출 문자열
ㅇ ESC 문자 (역슬래시 \, ASCII 코드값 27)는, `탈출 문자` 또는 `확장 문자` 라고 함
- 그 의미는, ESC 문자 다음에, `추가적인 문자가 뒤따른다`라는 뜻임
. (한편, 실제 터미널 장치에는 ^esc, ESC, Ctrl-[ 등으로 보임)
ㅇ Escape 문자와 이후 따르는 추가 비트를 묶어서, `탈출 문자열 (escape sequence)` 이라고 함
- ISO/IEC 2022에서는 이를 `코드 확장 (code extension)`이라고도 표현함
. 즉, 1 이상의 문자의 집합으로 확장되어 보이는 문자열을 말함
3. 프로그래밍 언어 상의 확장열
ㅇ 규칙
- 문자열(스트링) 내에 수용될 수 없는 특별한 의미를 갖는,
- `공백문자,따옴표,제어문자 등`을 포함시켜야 할 경우에,
- 역슬래시(\)를 그 앞에 두고, 포함시킴
ㅇ 주요 例)
- \' : 작은 따옴표
- \" : 큰 따옴표
- \\ : 백슬래시
- \a : 경보 음 (Bell) (아스키코드 7)
- \b : 뒤로 한 칸 이동 (Backspace) (아스키코드 8)
- \t : 수평탭 간격 띄우기 (아스키코드 9)
. 8 진수로 \011, 16 진수로, \x09
- \n : 줄바꿈 (Linefeed) (아스키코드 10)
. 8 진수로 \012, 16 진수로, \x0a
- \v : 수직탭 간격 띄우기 (아스키코드 11)
- \f : 프린트 출력 용지를 한 페이지 넘김 (Form feed) (아스키코드 12)
- \r : 동일한 줄의 맨 앞으로 커서 이동 (Carriage Return) (아스키코드 13)
- \0 : 널 문자 (NULL)
- \r\n : 한편, 윈도우즈는, 이 둘을 함께해야 비로소 줄바꿈 (Carriage Return and Linefeed)
- \ddd : 8 진수 ddd (때론, \0ddd)
- \xdd : 16 진수 dd
- \udddd : 16 진수 유니코드 문자 (통상, 4자리 16 진수 dddd)
- \xXX : 두 자릿수 16진수 XX로 지정된 라틴(Latin-1) 문자
- \uXXXX : 네 자릿수 16진수 XXXX로 지정된 유니코드(UTF-16) 문자
- \u{XXXXXX} : 16진수 코드 포인트 XXXXXX로 지정된 유니코드(UTF-16) 문자