- 읽는 시간
- 0초
- 소리 내어 읽기
- 0초
- 평균 단어 길이
- 0
- UTF-8 바이트
- 0
- UTF-16 단위(String.length)
- 0
- 유니코드 코드 포인트
- 0
작동 방식
글자 수 세기는 이모지가 나타나기 전까지는 쉬워 보입니다. 사람이 보는 개수는 데이터베이스에 저장되는 개수와도, 프로그래밍 언어가 반환하는 값과도 다릅니다. 가족 이모지는 화면에서 한 글자지만, 유니코드 코드 포인트로는 5개, UTF-16 단위(JavaScript·Java·C#의 String.length 값)로는 8개, UTF-8로는 18바이트입니다. 이 도구는 네 가지 값을 모두 보여 주므로 마케팅 문구에도, VARCHAR 열 크기를 정할 때도 쓸 수 있습니다.
단어, 문장, 글자는 브라우저에 내장된 유니코드 분할 규칙으로 셉니다. 커서를 움직이거나 더블클릭으로 선택할 때 쓰는 것과 같은 규칙입니다. 그래서 중국어나 일본어처럼 띄어쓰기로 단어를 구분하지 않는 언어에서도 동작하고, 결합 악센트가 붙은 글자를 두 글자로 세지 않습니다.
읽는 시간은 190개 연구를 메타 분석한 평균 속도(Brysbaert, 2019)를 사용합니다. 비소설 묵독은 분당 238단어, 소리 내어 읽기는 183단어입니다. 텍스트는 브라우저 밖으로 나가지 않으며 공유 링크에도 저장되지 않습니다.
예시
👨👩👧1 · 5 · 8 · 18보이는 글자는 1개, 코드 포인트는 5개(보이지 않는 결합 문자 2개로 이은 이모지 3개), UTF-16 단위는 8개, UTF-8로는 18바이트입니다. API가 280"자"로 제한한다면 이 중 어떤 기준인지 확인해 두세요.SMS · 151 GSM-7 → 151 UCS-21 SMS → 3 SMS151자 SMS는 GSM 알파벳이면 한 건에 들어가지만, í 하나만 있어도 휴대폰이 UCS-2로 바뀌어 각 조각에 67자만 들어갑니다. 같은 문구가 세 건 요금이 됩니다.café (NFC) · cafe + ◌́ (NFD)4 · 5같은 단어라도 é를 코드 포인트 하나로 저장할 수도, e 뒤에 결합 악센트를 붙여 저장할 수도 있습니다. 화면에서는 똑같아 보이고 이 도구는 둘 다 4글자로 세지만, String.length는 4 또는 5를 반환합니다.활용 사례
- 제목과 메타 설명을 Google에서 잘리지 않는 길이에 맞추기.
- 캠페인이나 인증 코드가 SMS 몇 건이 될지 계산하고, 비용을 올리는 글자 찾기.
- 데이터베이스 열 크기를 정하거나 utf8mb4를 쓰는 MySQL의 VARCHAR처럼 바이트 제한이 있는 필드 검증하기.
- 과제, 초록, 공모의 최소·최대 단어 수 맞추기.
- 기사를 읽는 데 걸리는 시간이나 대본 녹음 시간 추정하기.
- 글을 게시하기 전에 지나치게 반복된 단어 찾기.
자주 묻는 질문
다른 글자 수 세기와 결과가 다른 이유는?
세는 방법이 하나가 아니기 때문입니다. 많은 도구가 String.length로 UTF-16 단위를 세서 이모지를 2개 이상으로 셉니다. 아포스트로피에서 끊는 정규식으로 단어를 나눠 "don't"나 "l'eau"를 두 단어로 세는 도구도 있습니다. 이 도구는 글자를 화면에 보이는 그대로, 단어는 유니코드 규칙대로 세므로 사람이 세는 방식과 가장 비슷합니다.
악센트 하나가 SMS 요금을 바꾸는 이유는?
7비트 GSM 알파벳은 메시지당 160자를 허용하지만, 악센트가 있는 글자를 모두 포함하지는 않습니다. é, ñ, ü, à는 있지만 á, í, ó, ú는 없습니다. 이 알파벳 밖의 글자가 하나만 있어도 메시지 전체가 UCS-2로 바뀌어 한도가 70자, 나눠야 하면 조각당 67자로 줄어듭니다. 이들 글자를 포함한 스페인어 국가 테이블을 쓰는 통신사도 있지만, 그것을 기대하지 않는 편이 좋습니다.
Google 제목은 몇 글자까지 되나요?
Google은 글자 수가 아니라 데스크톱 기준 약 600픽셀의 너비로 자르므로 실제 한도는 글자에 따라 다릅니다. W는 i보다 훨씬 넓습니다. 50~60자면 대개 모두 표시되고, 메타 설명은 약 155~160자까지 표시됩니다. 도구의 막대는 이 값을 기준으로 합니다.
X(트위터)의 글자 수와 같나요?
대부분 같지만 완전히 같지는 않습니다. X는 링크를 길이와 상관없이 23자로, 중국어·일본어·한국어 글자는 2자로 셉니다. 링크가 없는 라틴 문자 텍스트라면 숫자가 같습니다.
텍스트는 데이터베이스에서 몇 바이트를 차지하나요?
열의 인코딩에 따라 다릅니다. UTF-8에서 영문자는 1바이트, 악센트 글자와 키릴 문자는 2바이트, 한자는 3바이트, 이모지는 4바이트입니다. utf8mb4를 쓰는 MySQL은 VARCHAR 길이를 글자 수로 세지만 행 한도는 바이트로 세고, NVARCHAR를 쓰는 SQL Server는 UTF-16을 쓰므로 이 도구의 UTF-16 단위 값이 기준이 됩니다.