🧰도구상자

🔠 대소문자·케이스 변환

대문자·소문자·카멜·스네이크·케밥 케이스 변환과 공백 정리.

  • UPPER 대문자

    HELLO WORLD EXAMPLE

  • lower 소문자

    hello world example

  • camelCase

    helloWorldExample

  • snake_case

    hello_world_example

  • kebab-case

    hello-world-example

  • Title Case

    Hello World Example

  • 공백/줄바꿈 정리

    Hello World Example

대소문자·케이스 변환기는 입력한 텍스트를 대문자·소문자·camelCase·snake_case·kebab-case·Title Case 등 원하는 표기 규칙으로 즉시 바꿔 주는 도구입니다. 변수명·함수명·파일명·URL 슬러그·데이터 컬럼명처럼 특정 케이스 규칙을 지켜야 하는 작업에서, 손으로 하나하나 고칠 필요 없이 붙여넣기 한 번으로 여러 형식을 동시에 얻을 수 있습니다.

프로그래밍에서 이름을 어떻게 표기하느냐(네이밍 컨벤션)는 단순한 취향이 아니라 언어·프레임워크·팀의 규약입니다. 예를 들어 JavaScript는 변수와 함수에 camelCase, 클래스에 PascalCase를 쓰고, Python은 변수·함수에 snake_case를 씁니다. 규약과 다른 표기를 섞어 쓰면 코드 리뷰에서 지적받거나 린터(linter) 경고가 뜨고, 협업 시 가독성이 떨어집니다. 이 변환기는 그런 형식 맞추기를 자동화합니다.

아래에서는 이 도구가 지원하는 변환 종류, 대표적인 케이스 표기법의 정확한 정의와 예시, 프로그래밍 언어별 관례, 그리고 실무에서 자주 겪는 함정과 질문을 정리했습니다. 변환 결과는 각 항목 옆의 '복사' 버튼으로 바로 클립보드에 담을 수 있습니다.

사용 방법

  1. 상단 입력창에 변환할 텍스트나 이름을 붙여넣습니다. 여러 단어(예: "user profile image")나 이미 특정 케이스로 된 문자열(예: "userProfileImage") 모두 인식합니다.
  2. 입력하는 즉시 UPPER 대문자, lower 소문자, camelCase, snake_case, kebab-case, Title Case, 공백/줄바꿈 정리 결과가 목록으로 함께 표시됩니다.
  3. 원하는 형식 오른쪽의 '복사' 버튼을 누르면 해당 결과만 클립보드에 복사됩니다. 체크 표시(✓)가 잠깐 뜨면 복사가 된 것입니다.
  4. 여러 이름을 한 번에 바꾸려면 한 줄에 하나씩 넣기보다, 각 이름을 개별로 넣어 변환하는 것이 정확합니다. 케이스 변환은 단어 경계를 기준으로 동작하기 때문입니다.

이 도구가 지원하는 변환

입력 텍스트를 대문자·소문자·기호 문자(_ 나 -)로 나뉜 단어 경계를 기준으로 분석해, 아래 일곱 가지 형식으로 동시에 변환합니다. camelCase처럼 이미 붙어 있는 문자열도 대문자 위치를 단어 경계로 인식해 다시 나눕니다.

입력 "user profile image" 기준 변환 결과
변환설명결과 예시
UPPER 대문자모든 글자를 대문자로USER PROFILE IMAGE
lower 소문자모든 글자를 소문자로user profile image
camelCase첫 단어만 소문자, 이후 단어 첫 글자 대문자, 공백 제거userProfileImage
snake_case모두 소문자, 단어를 밑줄(_)로 연결user_profile_image
kebab-case모두 소문자, 단어를 하이픈(-)으로 연결user-profile-image
Title Case각 단어 첫 글자만 대문자User Profile Image
공백/줄바꿈 정리연속 공백을 하나로, 3줄 이상 빈 줄을 2줄로 정리정돈된 텍스트

PascalCase·CONSTANT_CASE가 필요하면

이 도구는 Title Case(각 단어 첫 글자 대문자)와 UPPER(전부 대문자)를 제공합니다. 클래스명에 쓰는 PascalCase(UserProfileImage)는 camelCase 결과의 첫 글자만 대문자로 바꾸면 되고, 상수에 쓰는 CONSTANT_CASE(USER_PROFILE_IMAGE)는 snake_case 결과를 UPPER로 다시 변환하면 얻을 수 있습니다.

케이스 표기법 정의와 예시

케이스(case) 표기법은 여러 단어로 된 이름을 공백 없이 하나로 이어 쓸 때, 단어 구분을 대소문자나 기호로 표현하는 규칙입니다. 같은 뜻의 이름 "user name"이 규칙에 따라 어떻게 달라지는지 아래 표로 비교했습니다.

"user name"을 각 표기법으로 변환한 결과
표기법구분 방식예시주로 쓰는 곳
camelCase둘째 단어부터 첫 글자 대문자userNameJS 변수·함수, Java 메서드
PascalCase (UpperCamelCase)모든 단어 첫 글자 대문자UserName클래스·타입·컴포넌트명
snake_case소문자 + 밑줄(_)user_namePython·Ruby 변수, DB 컬럼
kebab-case소문자 + 하이픈(-)user-nameURL 슬러그, CSS 클래스, 파일명
CONSTANT_CASE (SCREAMING_SNAKE)대문자 + 밑줄(_)USER_NAME상수, 환경변수
Title Case각 단어 첫 글자 대문자 + 공백User Name제목, 라벨, 문서 헤딩

헷갈리기 쉬운 구분

camelCase와 PascalCase는 첫 글자만 다릅니다(userName vs UserName). snake_case와 kebab-case는 연결 기호만 다릅니다(user_name vs user-name). URL과 CSS에서는 밑줄보다 하이픈(kebab-case)이 표준으로 권장됩니다.

프로그래밍 언어별 네이밍 관례

케이스 규칙은 언어와 대상(변수·함수·클래스·상수)에 따라 관례가 정해져 있습니다. 아래는 널리 통용되는 스타일 가이드 기준의 대표 관례입니다. 실제 프로젝트에서는 팀의 린터 설정이 최종 기준이 됩니다.

언어별 대표 네이밍 컨벤션
언어변수·함수클래스·타입상수
JavaScript / TypeScriptcamelCasePascalCaseCONSTANT_CASE
Pythonsnake_casePascalCaseCONSTANT_CASE
JavacamelCasePascalCaseCONSTANT_CASE
GocamelCase (비공개) / PascalCase (공개)PascalCasePascalCase / CONSTANT_CASE
Rubysnake_casePascalCaseCONSTANT_CASE
Rustsnake_casePascalCaseCONSTANT_CASE
CSS / HTMLkebab-case (클래스·속성)--
SQL(관례)snake_case (컬럼·테이블)--

Go의 대소문자는 문법입니다

Go에서는 이름의 첫 글자가 대문자면 패키지 외부로 공개(export), 소문자면 비공개입니다. 즉 PascalCase냐 camelCase냐가 단순 스타일이 아니라 접근 제어를 결정하는 문법 규칙이므로 특히 주의해야 합니다.

실무에서 자주 쓰는 상황

케이스 변환이 특히 자주 필요한 대표적인 작업들입니다.

  • API 연동: 서버가 snake_case(user_name)로 내려주는 JSON을 프론트엔드 camelCase(userName)로 맞출 때.
  • DB 스키마 설계: 컬럼명을 snake_case로 통일하거나, 반대로 코드용 이름으로 바꿀 때.
  • URL 슬러그 만들기: 글 제목 "제품 상세 페이지" 같은 라벨을 kebab-case(product-detail-page)로 변환해 주소에 쓸 때.
  • 환경변수·상수 정의: 설정 키를 CONSTANT_CASE(MAX_RETRY_COUNT)로 통일할 때.
  • 디자인·문서 작업: 버튼 라벨이나 제목을 Title Case로 일관되게 정리할 때.
  • 리팩터링: 코드 스타일 가이드가 바뀌어 기존 이름들의 케이스를 일괄 변경해야 할 때.

자주 묻는 질문

camelCase와 PascalCase는 뭐가 다른가요?
둘 다 단어를 붙여 쓰고 각 단어 첫 글자를 대문자로 구분하지만, 맨 앞 글자가 다릅니다. camelCase는 첫 글자가 소문자(userName), PascalCase는 첫 글자도 대문자(UserName)입니다. 보통 변수·함수에는 camelCase, 클래스·타입·컴포넌트에는 PascalCase를 씁니다.
snake_case와 kebab-case 중 언제 무엇을 쓰나요?
연결 기호만 다릅니다. snake_case는 밑줄(user_name)로, kebab-case는 하이픈(user-name)으로 단어를 잇습니다. Python 변수나 DB 컬럼처럼 코드 식별자에는 snake_case를, URL 슬러그·CSS 클래스·파일명처럼 웹 주소나 마크업에는 kebab-case를 씁니다. 밑줄은 URL에서 밑줄 표시와 겹쳐 보이지 않는 문제가 있어 웹에서는 하이픈이 권장됩니다.
이미 camelCase로 된 문자열도 변환되나요?
네. 이 도구는 소문자 뒤에 오는 대문자를 단어 경계로 인식합니다. 예를 들어 "userProfileImage"를 넣으면 user / profile / image로 나눠 snake_case(user_profile_image)나 kebab-case(user-profile-image) 등으로 다시 변환합니다.
CONSTANT_CASE(대문자 스네이크)는 어떻게 만드나요?
먼저 snake_case로 변환해 단어를 밑줄로 이은 뒤(user_name), 그 결과를 다시 UPPER 대문자로 변환하면 됩니다(USER_NAME). 상수나 환경변수 이름을 만들 때 이 순서를 쓰면 편리합니다.
한글이나 숫자가 섞여 있어도 되나요?
한글은 대소문자 개념이 없어 그대로 유지되고, 숫자는 단어의 일부로 취급됩니다. 다만 케이스 변환은 영문 식별자를 만들 목적으로 설계되었으므로, 한글 제목을 URL 슬러그로 바꾸려면 먼저 로마자로 옮긴 뒤 kebab-case로 변환하는 것이 좋습니다.
변환 결과를 한 번에 여러 개 복사할 수 있나요?
각 형식마다 별도의 '복사' 버튼이 있어 원하는 결과만 골라 클립보드에 담습니다. 여러 형식이 필요하면 버튼을 각각 눌러 순서대로 복사하면 됩니다.

관련 도구