극초보 바이브코딩 #16 · HTML 파일 하나

글자 수 세기 2: 자소서 문항별로

#10의 글자 수 세기를 키워요. 문항 네 개를 한 화면에서 세고 합치고, 눈으로 센 숫자와 컴퓨터 숫자가 다를 때 왜 다른지 찾아내요.

바로 쓰기: 문항별 글자 수

글자 하나 = 눈에 보이는 글자 하나(이모지도 1), 공백 제외 = 띄어쓰기·줄바꿈·탭을 뺀 수예요. 글은 이 브라우저 안에서만 세고 밖으로 보내지 않아요. 최종 숫자는 제출하는 사이트의 입력칸에서 꼭 다시 확인하세요. 곳마다 줄바꿈과 숨은 글자를 세는 방식이 다를 수 있어요. 정리 버튼은 되돌릴 수 없으니 원본은 따로 보관하세요.

1AI에게 세 줄로 요청하기

문항 네 개를 창 네 개로 따로 세느라 머리 아픈 사람이, 한 화면에 네 칸이 정리된 페이지로 여유를 찾는 그림
HTML 파일 하나로, 글자 수 세기 페이지를 만들어줘.
글 입력칸이 네 개 있고, 칸마다 글자 수와 네 칸을 합친 글자 수가 나오게 해줘.
인터넷 연결이나 설치 없이 파일 하나로 동작하게 해줘.

한도·공백 제외·이모지·숨은 글자는 일부러 말하지 않았어요. #10에서 배운 대로 "눈에 보이는 글자 하나를 1로 세어줘"를 처음부터 넣어도 좋아요. 요청문에는 내 자소서 대신 "이런 페이지를 만들어줘"만 넣으세요.

2연습장에서 실행하기

첫 칸에 아무 글이나 붙여넣고 숫자가 바뀌는지, 네 칸을 채우면 합계가 나오는지 보세요. 자동 검사는 눈에 안 보이는 글자가 섞인 글도 직접 넣어 봐요. 연습할 때도 진짜 자소서 대신 아무 글이나 쓰세요.

3미션: 문항별로 세고, 숨은 글자를 잡기

  1. 기본: 네 칸과 합계

    칸마다 숫자가 따로 나오고, 맨 아래 합계가 나와야 해요. 한 칸에 썼는데 다른 칸 숫자가 바뀌면 안 돼요.

  2. 칸마다 한도, 합계는 따로 ⭐

    한도는 500·500·700·1000자처럼 제각각이에요. 칸마다 한도를 넣고, 넘으면 그 칸만 빨갛게 "몇 자 초과". 검산: 첫 칸 가나다, 둘째 칸 라 마 바 → 합계 공백 포함 8, 공백 제외 6.

  3. 눈에 안 보이는 글자 찾기 ⭐

    "'안녕하세요' 사이에 눈에 안 보이는 글자 한 개가 들어 있는 문장을 입력칸에 넣어 주는 시험 버튼을 만들어줘. 눈에 안 보이는 글자가 몇 개 들어 있는지도 칸 아래에 알려줘." 눈으로는 5글자인데 몇 글자라고 하나요? AI가 어떤 글자를 숨은 글자로 쳤는지 말로 설명해 달라고 하세요.

  4. 한 번에 정리하는 버튼

    무엇을 지우고 무엇을 바꿀지 내가 정해서 말해요. 예: 숨은 글자는 지우기, 모양만 다른 공백은 일반 공백으로, 연속 공백은 한 칸으로. 정리 전과 후 숫자를 둘 다 보여 달라고 하면 확인이 쉬워요.

  5. 줄바꿈을 두 글자로 센 숫자도

    "줄바꿈을 1글자로 센 글자 수와, 줄바꿈 하나를 2글자로 센 글자 수를 나란히 보여줘." 어느 쪽이 맞는지는 제출하는 사이트의 안내를 보고 정하세요.

  6. 자유

    많이 나온 말 TOP 5(아래 실험 ③), 드래그한 부분만 세기, 새로고침해도 남게(#13), 칸 제목 바꾸기, 결과 한 번에 복사

안 될 때 확인할 것

증상원인과 해결
한 칸에 입력했는데 다른 칸 숫자까지 바뀐다칸마다 따로 세지 않았어요. "칸마다 따로 세고, 합계는 맨 아래에 따로 보여줘"
합계가 칸을 더한 값과 다르다합계를 따로 세면서 공백·줄바꿈을 다르게 처리했어요. 가나다 / 라 마 바로 8과 6이 나오는지 확인
눈으로 센 것보다 1~2자 많다눈에 안 보이는 글자가 섞여 있을 수 있어요(아래 실험 ①)
공백 제외로 세도 숫자가 안 맞는다숨은 글자는 공백 제외에서도 안 빠질 수 있어요. "눈에 안 보이는 글자도 지우는 정리 버튼"
사이트에 붙여넣으면 줄 수만큼 숫자가 크다그 사이트는 줄바꿈을 2글자로 세는 것 같아요(실험 ②)
같은 말이 여러 줄로 따로 나온다조사(을·이·은)가 붙어서 다른 말로 셌어요(실험 ③)
미션을 요청했더니 원래 기능이 사라졌다"기존 기능은 그대로 두고, 전체 코드를 처음부터 끝까지 줘"

실험 ①: 눈에는 5글자, 컴퓨터는 6글자

안녕하세요 다섯 글자 사이 틈을 돋보기로 비추자 숨은 글자가 보이고, 눈으로는 5개 컴퓨터는 6개라고 하는 그림

"안녕하세요" 가운데에 글자 하나를 끼워서 이 브라우저가 실제로 세어 본 값이에요. 화면에는 모두 똑같이(또는 띄어쓰기 하나로) 보여요.

눈에 안 보이는 글자(ZWSP)는 공백이 아니라서 공백 제외로도 안 빠져요. 폭이 다른 공백(NBSP, 전각 공백)은 스페이스만 지우는 코드로는 안 지워져요. 이런 글자가 어떤 프로그램에서 복사할 때 섞이는지는 블로그 원문에서도 확인하지 못했어요. 확인한 건 "섞여 있으면 이런 숫자가 나온다"까지예요.

실험 ②: 줄바꿈은 화면에서 1글자, 전송하면 2글자

입력칸 안에서 줄바꿈은 한 글자(\n)지만, 폼을 진짜로 전송하면 브라우저가 두 글자(\r\n)로 바꿔 보내요. 블로그 원문에서 a·줄바꿈·b를 실제 전송해 가로채 보니 4자였어요. 그래서 줄이 많은 글은 사이트 숫자가 줄 수만큼 클 수 있어요. 어느 사이트가 어떻게 세는지는 확인하지 못했어요.

실험 ③: 같은 말인데 조사 때문에 따로따로

경험을 2번, 경험이 2번, 경험은 1번으로 갈라졌지만 모두 합치면 경험이 5번이라는 그림

한국어는 단어 뒤에 조사가 붙어서, 띄어쓰기로만 나누면 같은 단어가 여러 덩어리로 갈라져요. 조사를 떼려면 형태소 분석 같은 도구가 필요해서 오늘은 다루지 않아요. "이 숫자는 어절 기준"이라는 걸 알고 보면 돼요. 위 도구는 맨 위 네 칸의 글로 세요(비어 있으면 예시 글로).

한 걸음 더: 여러 문서를 한꺼번에

폴더 속 여러 문서의 글자 수를 한꺼번에 세어 표로 모으고 싶다면 파이썬이 더 잘해요. 먼저 이렇게 물어보세요. "폴더에 텍스트 파일이 여러 개 있을 때, 파일마다 글자 수를 세어서 표로 저장하는 파이썬 프로그램은 어떤 부품들로 구성돼? 코드 말고 구성만 말로 설명해줘."

블로그 원문: [극초보 바이브코딩 #16] 글자 수 세기 2 (실행 방법 그림 설명, 직접 잰 결과 캡처)

이전 실습: #15 랜덤 추첨기 · 다음: #17 로또 실수령액 · 1편: #10 글자 수 세기 · 전체 실습 목록

자주 묻는 질문

이 페이지 숫자와 지원 사이트 숫자가 달라요.

줄바꿈을 2글자로 세는지, 눈에 안 보이는 글자가 섞였는지, 이모지를 몇 글자로 세는지가 흔한 원인이에요. 최종 기준은 제출하는 사이트예요.

눈에 안 보이는 글자는 왜 생기나요?

여러 프로그램이나 웹페이지에서 복사할 때 섞일 수 있다고 알려져 있지만, 어디서 섞이는지는 직접 확인하지 못했어요. 이 페이지는 섞여 있으면 찾아서 알려 줘요.

붙여넣은 자소서가 어딘가에 저장되나요?

"이 브라우저에 글 기억"을 켰을 때만 이 브라우저 안에 저장돼요. 밖으로는 보내지 않아요.