텍스트 · 2026년 7월 2일 · 읽는 시간 4분

JSON 문자열 이스케이프, 손으로 하다가 놓치는 경우가 생김

👉 문자열 이스케이프 도구 바로 가기

사용자 입력 텍스트를 JSON 값에 넣어야 하는데, 따옴표와 백슬래시를 직접 이스케이프하다가 파싱 에러가 났다.

이스케이프가 필요한 상황

개발하다 보면 꽤 자주 만난다:

  • 사용자 입력을 JSON 문자열로 저장 → 따옴표, 백슬래시 이스케이프 필요
  • SQL 쿼리 문자열 → 작은따옴표 이스케이프
  • HTML 안에 사용자 텍스트 삽입 → XSS 방지를 위한 엔티티 인코딩
  • URL에 한글/특수문자 포함 → 퍼센트 인코딩
  • 정규식 문자열 → 특수 문자 이스케이프
  • 셸 명령 인자 → 공백/특수문자 처리

이스케이프 처리 하나 빠지면 파싱 에러, 보안 취약점, 데이터 손상으로 이어진다.


이스케이프가 헷갈리는 이유

형식마다 이스케이프 규칙이 다르다:

  • JSON → \n, \t, \", \\, \/ 등
  • HTML → &, <, >, ", ' 등 엔티티
  • URL → %20 (공백), %2F (/), %3A (:) 등 퍼센트 인코딩
  • 정규식 → ., *, +, ?, ^, $, {}, [], () 등 앞에 \
  • JavaScript 문자열 → \n, \t, \\, \', \" 등

형식별로 규칙이 달라서 헷갈리고, 하나 놓치면 에러가 난다.


그래서 만들었음

텍스트 붙여넣으면 형식별로 이스케이프/언이스케이프 해준다:

  • JSON 이스케이프 → JSON 문자열 값으로 사용 가능하게
  • HTML 이스케이프 → HTML 엔티티로 변환 (XSS 방지)
  • URL 인코딩 → 퍼센트 인코딩 처리
  • JavaScript 이스케이프 → JS 문자열로 안전하게
  • 정규식 이스케이프 → 정규식 특수문자 처리

반대 방향도 가능:

  • 이스케이프된 문자열 → 원본 텍스트로 복원 (언이스케이프)
  • URL 디코딩 → 퍼센트 인코딩 → 원본 문자로
  • HTML 엔티티 → 실제 문자로

JSON 이스케이프 대상 문자 정리

JSON 문자열에서 이스케이프해야 하는 문자들:

  • " → \" (큰따옴표)
  • \ → \\ (백슬래시)
  • 줄바꿈 → \n (newline)
  • → \t (tab)
  • 캐리지리턴 → \r
  • 폼피드 → \f
  • 백스페이스 → \b
  • 제어문자 → \u00XX 형식

이 중에서 실수로 가장 많이 놓치는 건 백슬래시와 큰따옴표다.


실제로 써보니

좋은 점:

  • 형식 선택하면 즉시 변환 → 버튼 따로 안 눌러도 됨
  • 이스케이프/언이스케이프 양방향 지원
  • 어떤 문자가 변환됐는지 하이라이트 표시

한계:

  • 복잡한 중첩 이스케이프(JSON 안의 HTML 등)는 한 번에 처리 안 됨
  • 언어별 특수 이스케이프 방식은 모두 지원하지 않음

사용법

  1. 이스케이프할 텍스트 붙여넣기
  2. 형식 선택 (JSON, HTML, URL 등)
  3. 결과 복사

3초면 된다.


써보기

👉 문자열 이스케이프 도구 바로 가기

회원가입 없이 바로 쓸 수 있다.


#문자열이스케이프 #JSON이스케이프 #HTML이스케이프 #URL인코딩 #개발도구 #텍스트도구

광고