대소문자 변환
텍스트를 붙여 넣고 여덟 가지 대소문자 형식 중 하나를 고르세요. 글쓰기용 네 가지와 코드용 네 가지가 있습니다. 입력하는 즉시 결과가 바뀌고, 줄바꿈은 그대로 유지되며, 단순한 A–Z 대응표가 아니라 유니코드 대소문자 규칙을 따릅니다.
0자 · 0단어 · 0줄
0자 · 0단어 · 0줄
이 브라우저 탭 안에서만 처리됩니다. 입력한 텍스트는 업로드되거나 저장되지 않습니다.
기능 설명
대소문자 변환 기능은 영문 대소문자를 바꿉니다. 모두 대문자(UPPER CASE), 모두 소문자(lower case), 단어 첫 글자 대문자(Title Case), 문장 첫 글자 대문자(Sentence case), 프로그래밍용 camelCase, snake_case, kebab-case, 그리고 aLtErNaTiNg 표기를 지원합니다. 유니코드 대소문자 매핑을 사용하며, 튀르키예어의 점 있는 i와 점 없는 ı를 위한 옵션이 있습니다.
User Account ID
user_account_id
여덟 가지 형식과 각각 쓰이는 곳
대문자(UPPER CASE)와 소문자(lower case)는 따로 설명할 필요가 없지만, 그 자체가 최종 목표인 경우는 드뭅니다. 제목에는 보통 모든 단어를 대문자로 시작하는 단어 첫 글자 대문자(Title Case)가 필요하고, 모두 대문자로 된 본문을 붙여 넣었다면 각 문장의 첫 글자만 대문자로 쓰는 문장 첫 글자 대문자(Sentence case)가 필요합니다. 제목 속 짧은 단어를 어떻게 쓸지는 스타일 가이드마다 다릅니다(AP와 Chicago 모두 짧은 전치사와 관사를 소문자로 쓰지만 목록이 서로 다릅니다). 그래서 이 변환기는 모든 단어를 대문자로 시작하고 예외 처리는 사용자에게 맡깁니다.
코드용 형식은 공백, 문장 부호, 기존 대문자 위치에서 텍스트를 단어로 나눕니다. 그래서 XMLHttpRequest는 snake_case에서 xml_http_request가 됩니다. camelCase는 JavaScript와 Java의 변수 이름 규칙이고, snake_case는 Python과 SQL 열 이름의 표준이며, kebab-case는 URL, CSS 클래스 이름, 파일 이름에 씁니다. aLtErNaTiNg 표기는 순전히 장식용으로, 주로 밈에 등장합니다.
대소문자 변환이 보기보다 어려운 이유
대소문자 대응은 영어 알파벳 26자가 아니라 유니코드 표준이 정의하며, 일부 대응은 텍스트 길이를 바꿉니다. 독일어 ß는 대문자로 바꾸면 SS가 되므로 단어가 한 글자 길어질 수 있습니다. 그리스어 대문자 Σ에는 소문자가 두 가지 있어서, 단어 안에서는 σ, 단어 끝에서는 ς가 됩니다. fi 같은 합자는 대문자로 바꾸면 두 글자로 늘어납니다.
튀르키예어와 아제르바이잔어에는 영어의 두 글자에 해당하는 글자가 네 개 있습니다. 점 있는 i와 İ, 점 없는 ı와 I입니다. 기본 유니코드 규칙으로는 "İ"를 소문자로 바꾸면 i 뒤에 결합용 점이 붙고, "i"를 대문자로 바꾸면 그냥 I가 되어 istanbul의 철자가 틀어집니다. 튀르키예어 옵션을 선택하면 변환기가 해당 언어 전용 대응을 사용하므로 istanbul은 İSTANBUL이 되고 ILIK은 ılık이 됩니다. toUpperCase로 문자열을 비교하는 코드가 튀르키예 사용자에게서 오작동하는 이유도 이것이며, 이 버그는 '튀르키예 테스트(Turkey test)'라는 이름이 붙을 만큼 유명합니다.
깔끔한 결과를 얻는 요령
변환 후 가장 먼저 확인할 것은 약어입니다. 변환기는 어떤 단어가 고유 명사인지 알 수 없으므로 Title Case는 NASA를 Nasa로, Sentence case는 nasa로 씁니다. 이런 부분은 직접 고치거나, 바꿔야 하는 부분만 골라서 변환하세요. 식별자를 만들 때는 따옴표나 이모지 같은 문자를 먼저 지우세요. camelCase, snake_case, kebab-case 결과에서는 이런 문자가 빠집니다. 텍스트의 단어 수나 글자 수도 알아야 한다면 글자 수 세기에 붙여 넣으세요.
자주 묻는 질문
- 대소문자 변환기는 줄바꿈을 유지하나요?
- 네. 모든 형식이 줄 단위로 동작하므로 목록과 문단의 모양이 그대로 유지됩니다. camelCase, snake_case, kebab-case에서는 각 줄이 하나의 식별자가 됩니다.
- 독일어 ß가 왜 SS로 바뀌었나요?
- 그것이 ß의 표준 유니코드 대문자 대응입니다. 대문자 ẞ도 있지만(Unicode 5.1에서 추가), 독일어 맞춤법이 전통적으로 요구하는 대로 기본 대소문자 변환은 여전히 SS를 만듭니다.
- snake_case로 바꿀 때 단어는 어떻게 나누나요?
- 모든 공백과 문장 부호, 소문자에서 대문자로 바뀌는 모든 지점, 그리고 약어 뒤에 소문자가 이어질 때 약어의 마지막 대문자 앞에서 새 단어를 시작합니다. 그래서 HTMLParser는 html_parser가 됩니다.
- 튀르키예어 규칙은 언제 켜야 하나요?
- 텍스트가 튀르키예어나 아제르바이잔어일 때는 항상 켜세요. 켜지 않으면 i와 I가 영어처럼 대응되어, 점 있는 대문자 İ나 점 없는 소문자 ı를 쓰는 단어의 철자가 틀어집니다.
- PascalCase로도 바꿀 수 있나요?
- camelCase로 바꾼 뒤 각 줄의 첫 글자를 대문자로 고치면 됩니다. PascalCase는 첫 글자만 다릅니다. 상수 스타일(UPPER_SNAKE_CASE)은 snake_case로 바꾼 다음 대문자(UPPER CASE)로 바꾸면 됩니다.