텍스트 케이스 변환기란?
변수명·파일명·식별자 등을 작성할 때 프로젝트나 언어 규칙에 맞는 표기법(케이스)이 필요합니다. 이 도구는 한 번 입력한 텍스트를 여러 케이스로 동시에 변환해 보여주므로, 필요한 형태를 골라 바로 복사할 수 있습니다. 변환은 입력 즉시 실시간으로 이루어집니다.
케이스 종류
- camelCase : 첫 단어는 소문자, 이후 단어는 첫 글자만 대문자 (예: helloWorld)
- PascalCase : 모든 단어의 첫 글자를 대문자 (예: HelloWorld)
- snake_case : 단어를 소문자로 쓰고 언더스코어로 연결 (예: hello_world)
- kebab-case : 단어를 소문자로 쓰고 하이픈으로 연결 (예: hello-world)
- CONSTANT_CASE : 단어를 대문자로 쓰고 언더스코어로 연결 (예: HELLO_WORLD)
- dot.case : 단어를 소문자로 쓰고 점으로 연결 (예: hello.world)
- Title Case : 각 단어의 첫 글자를 대문자로 하고 공백으로 연결 (예: Hello World)
- Train-Case : 각 단어의 첫 글자를 대문자로 하고 하이픈으로 연결 (예: Hello-World)
- path/case : 단어를 소문자로 쓰고 슬래시로 연결 (예: hello/world)
- Sentence case : 첫 단어의 첫 글자만 대문자로 (예: Hello world)
- UPPERCASE : 입력 전체를 대문자로 (예: HELLO WORLD)
- lowercase : 입력 전체를 소문자로 (예: hello world)
단어를 나누는 규칙
어떤 케이스로 바꾸든 먼저 입력을 단어 단위로 쪼갭니다. 이 도구는 두 단계로 나눕니다.
- 1단계 — 공백, 언더스코어(
_), 하이픈(-), 점(.)을 기준으로 자릅니다. - 2단계 — 대소문자가 바뀌는 지점을 다시 자릅니다. 소문자나 숫자 뒤에 대문자가 오면 그 앞에서 끊고(
helloWorld→ hello / World), 대문자가 연달아 나오다가 대문자+소문자가 이어지면 그 앞에서 끊습니다(HTMLParser→ HTML / Parser).
덕분에 hello world, hello_world, hello-world, helloWorld가 모두 같은 두 단어로 인식되어 어떤 표기에서 출발하든 원하는 케이스로 바꿀 수 있습니다.
언어·상황별로 쓰는 케이스
- camelCase — 자바·자바스크립트의 변수와 메서드 이름, JSON 필드에서 가장 흔합니다.
- PascalCase — 클래스·컴포넌트·타입 이름에 씁니다. 리액트 컴포넌트 파일명도 여기에 해당합니다.
- snake_case — 파이썬·루비의 변수와 함수, 데이터베이스 테이블·컬럼 이름에 널리 쓰입니다.
- kebab-case — CSS 클래스, HTML 속성, URL 경로, npm 패키지 이름에 적합합니다.
- CONSTANT_CASE — 상수와 환경변수 이름에 씁니다.
- dot.case — 설정 파일의 키나 패키지 경로 표기에 쓰입니다.
- Title Case · Sentence case — 화면에 보이는 제목이나 문장 표기에 씁니다.
자주 하는 실수와 주의점
- 각 단어는 첫 글자만 대문자로 올리고 나머지는 소문자로 내립니다. 그래서
userID는 camelCase에서userId가 됩니다. 약어를 대문자 그대로 두고 싶다면 결과를 직접 손봐야 합니다. - UPPERCASE와 lowercase는 단어 분리와 무관합니다. 입력한 문자열의 띄어쓰기와 기호를 그대로 둔 채 대소문자만 바꿉니다.
- 한글은 대소문자 구분이 없어 글자 자체는 그대로 남고 연결 방식만 바뀝니다. 영문이 섞여 있으면 영문에만 대소문자 규칙이 적용됩니다.
- 숫자는 단어 경계로 보지 않습니다.
user2name은 한 단어로 처리되지만,user2Name처럼 뒤에 대문자가 오면 두 단어로 나뉩니다. - 여러 줄을 한꺼번에 넣으면 줄바꿈도 공백처럼 단어 구분으로 처리되어 한 줄로 합쳐집니다. 한 줄씩 변환하는 편이 안전합니다.
자주 묻는 질문
단어는 어떻게 구분되나요?
공백, 언더스코어(_), 하이픈(-), 점(.), 그리고 대소문자 경계(예: helloWorld의 W)를 모두 단어 경계로 인식합니다. 따라서 helloWorld, hello_world, hello-world 모두 같은 두 단어로 분리됩니다.
한글도 변환되나요?
네. 한글은 대소문자가 없으므로 글자 자체는 그대로 유지되며, 단어 연결 방식(언더스코어·하이픈 등)만 적용됩니다. 영문이 섞여 있으면 영문에만 대소문자 규칙이 적용됩니다.
UPPERCASE·lowercase는 단어 분리와 무관한가요?
네. 이 두 가지는 입력한 텍스트의 모든 문자를 그대로 두고 대문자나 소문자로만 바꿉니다. 띄어쓰기나 기호도 원래대로 유지됩니다.
userID처럼 약어가 들어가면 어떻게 되나요?
각 단어는 첫 글자만 대문자로 올리고 나머지는 소문자로 내리기 때문에 userID는 camelCase에서 userId가 됩니다. 약어를 대문자 그대로 유지하고 싶다면 결과를 직접 수정해야 합니다.
HTMLParser처럼 대문자가 연달아 오면 어떻게 나뉘나요?
대문자가 이어지다가 대문자와 소문자가 붙어 나오면 그 앞에서 끊습니다. 따라서 HTMLParser는 HTML과 Parser 두 단어로 나뉘고, snake_case로는 html_parser가 됩니다.
숫자는 단어 경계로 보나요?
숫자만으로는 단어를 나누지 않습니다. user2name은 한 단어로 처리되고, user2Name처럼 숫자 뒤에 대문자가 오면 그 지점에서 두 단어로 나뉩니다.
입력한 내용이 저장되나요?
아니요. 모든 변환은 브라우저에서만 이루어지며 서버로 전송되거나 저장되지 않습니다. 새로고침하면 입력칸도 비워집니다.