🧰미니 도구 모음
📝

텍스트 비교

두 텍스트의 차이를 LCS 알고리즘으로 라인·단어 단위 비교. 코드 리뷰·문서 수정 추적·계약서 검토에 즉시 활용.

텍스트 비교(diff)란 무엇인가?

텍스트 비교(diff)는 두 문서를 정렬·대조하여 추가·삭제·동일한 부분을 시각적으로 표시하는 작업입니다. 깃(Git)·SVN 같은 버전관리, 워드 프로세서의 변경 이력 추적, 계약서·논문 교정에서 가장 핵심적인 기능이며, 원리는 1976년 발표된 LCS(Longest Common Subsequence) 알고리즘에 기반합니다. 본 도구는 두 텍스트의 LCS를 동적계획법으로 계산해 변경되지 않은 줄을 기준으로 추가/삭제만 정확히 식별합니다. 결과는 라인 단위(GitHub diff와 동일 형식)와 단어 단위(워드 변경 이력 형식) 두 가지 모드로 표시되며, 추가는 초록·삭제는 빨강으로 한눈에 구분됩니다. 긴 문서·코드를 비교할 때도 변경되지 않은 90%는 그대로 두고 바뀐 10%만 강조해 검토 시간을 90% 이상 단축할 수 있습니다.

언제 텍스트 비교가 필요한가?

  • 코드 리뷰 — Pull Request에서 변경된 라인만 빠르게 확인. 본 도구로 로컬 파일 두 개를 즉시 diff.
  • 계약서·약관 검토 — 상대방이 보낸 수정본과 원본을 비교해 무단 추가/삭제 조항 적발. 한 글자 변경도 놓치지 않음.
  • 논문·자기소개서 교정 — 교수·첨삭자의 수정안과 내 원본을 대조해 어디가 어떻게 바뀌었는지 학습.
  • 이메일·공문 수정 이력 — 회의록·공문 v1과 v2를 비교해 누가 무엇을 바꿨는지 추적.
  • 번역본 일치 검증 — 원본 한국어와 번역 한국어 두 버전이 동일한지 확인.
  • 설정 파일 비교 — .env / config.json 등 두 환경의 설정 차이를 한눈에.

라인 비교 vs 단어 비교

모드단위적합한 상황
라인 비교줄(line) 단위코드, 로그, JSON/YAML, 표 형식 데이터
단어 비교공백 구분 토큰자연어 문서, 계약서, 논문, 자기소개서

※ 자연어 문서는 한 줄이 길어 라인 비교로는 변경 위치 식별이 어렵습니다. 단어 비교 모드를 권장합니다.

LCS 알고리즘 동작 원리

본 도구는 동적계획법으로 두 시퀀스의 가장 긴 공통 부분 수열(LCS)을 O(N×M) 시간에 계산합니다. 예를 들어 원본이 [A, B, C, D]이고 수정본이 [A, X, C, D]이면 LCS는 [A, C, D]이고, B는 삭제, X는 추가로 마킹됩니다. 단순히 다른 부분을 찾는 것이 아니라 "가장 많이 일치하는 정렬"을 찾기 때문에중간에 한 줄을 추가했을 때 그 아래 모든 줄이 변경된 것처럼 보이는 일이 발생하지 않습니다. Git, GitHub, BitBucket, VS Code의 diff도 모두 이 원리(또는 Myers diff 같은 변형)를 사용합니다.

자주 묻는 질문 (FAQ)

Q. 큰 파일도 비교 가능한가요?

A. LCS 알고리즘은 O(N×M) 메모리를 사용하므로, 한 쪽이 1만 줄을 넘으면 브라우저가 느려질 수 있습니다. 코드 파일은 보통 1천 줄 이내라 즉시 처리되며, 1만 줄 이상은 파일 분할 후 비교를 권장합니다.

Q. 한글 문서도 정확히 비교되나요?

A. 네. 라인 비교는 줄바꿈 단위, 단어 비교는 공백 단위로 동작하므로 한글·영문·이모지·중문 모두 동일하게 처리됩니다. 다만 한글 문서는 한 문장이 한 줄로 작성되는 경우가 많아 단어 비교 모드가 더 직관적입니다.

Q. 공백·줄바꿈 차이도 감지하나요?

A. 네. 라인 비교는 끝의 공백·줄바꿈도 다르면 변경으로 표시됩니다. 보이지 않는 공백 차이가 있을 때 유용합니다. 코드 들여쓰기(탭 vs 스페이스) 변경도 즉시 감지됩니다.

Q. 입력한 텍스트가 외부로 전송되나요?

A. 아니요. 모든 비교는 브라우저에서만 수행되며 서버로 전송되지 않습니다. 계약서·내부 코드도 안전하게 비교할 수 있습니다.

Q. 결과를 PDF나 이미지로 저장할 수 있나요?

A. 직접 저장 기능은 없지만, 브라우저의 인쇄(Ctrl/Cmd + P) 기능으로 PDF로 저장하면 색상 강조까지 그대로 출력됩니다. 또는 결과 영역을 스크린샷으로 캡처해 공유하세요.

사용 방법

  1. 1왼쪽 입력창에 원본 텍스트를, 오른쪽에 비교할 텍스트를 입력하세요.
  2. 2추가된 내용은 초록색, 삭제된 내용은 빨간색으로 표시됩니다.
  3. 3라인 단위 또는 단어 단위 비교를 선택할 수 있습니다.

활용 예시

  • 코드 변경 사항 비교
  • 문서 수정 전후 차이 확인
  • 번역 텍스트 비교 검토
  • 계약서, 약관 변경 내용 파악

자주 묻는 질문

Q. 파일을 직접 업로드할 수 있나요?

A. 현재는 텍스트 직접 입력 방식만 지원합니다.

Q. 결과를 내보낼 수 있나요?

A. 비교 결과를 복사하여 사용할 수 있습니다.