텍스트 비교 (Diff)

두 텍스트를 줄·단어·문자 단위로 비교합니다. 좌우 나란히 보기, 병합 화살표, 무시 규칙, 문법 강조, 링크 공유. 무료, 업로드 없음.

원본
변경본
비교 단위:
보기:
양쪽 텍스트:

단축키 Ctrl+Alt+C 비교 · Ctrl+Alt+S 좌우 바꾸기 · Ctrl+Alt+R 지우기

두 텍스트의 차이 확인

왼쪽에 원본 텍스트를, 오른쪽에 바뀐 텍스트를 붙여넣으면 입력하는 대로 비교됩니다. 추가된 부분은 초록, 삭제된 부분은 빨강으로 강조되고 그대로인 부분은 기본색으로 표시됩니다. 비교 단위는 (줄 전체를 비교하며 목록·설정·코드에 적합), 단어(줄 안에서 바뀐 단어만 표시), 가장 세밀한 문자 중에서 고를 수 있습니다. 문자는 코드 포인트 단위라 이모지나 한글 음절 하나가 언제나 한 글자로 세어지고 반 토막 나지 않습니다. 두 개의 체크박스로 비교 기준을 완화할 수 있는데, 대소문자 무시는 대소문자에 상관없이 글자를 같게 취급하고, 공백 무시는 공백 차이를 완전히 무시합니다. 양쪽 상자마다 붙여넣기와 파일 열기 버튼이 따로 있고, 파일을 상자 위로 끌어다 놓아도 됩니다 — .docx.odt는 브라우저 안에서 압축을 풀어 글자만 꺼내고, 나머지는 텍스트로 읽으며, 10 MB가 넘는 파일은 잘라 받지 않고 양쪽 크기를 알려 주며 거절합니다.

좌우 나란히 보기, 줄 번호, 병합 화살표

한 화면+·- 표시가 붙은 한 줄기 결과를 보여 주고, 좌우 나란히는 원본과 변경본을 두 칸으로 나눠 각각 자기 텍스트 기준으로 줄 번호를 매기므로 바뀐 줄이 그것을 대체한 줄과 마주 봅니다. 좌우 보기에서는 바뀐 줄 덩어리마다 첫 줄에 · 버튼이 붙습니다. 누르면 그 덩어리의 내용이 반대쪽 상자에 반영되고, 덩어리 바깥의 줄은 글자 하나 바뀌지 않으며 그쪽 텍스트가 쓰던 줄바꿈(LF 또는 CRLF)도 그대로 유지됩니다. 같은 줄 접기는 변경 지점 앞뒤 세 줄만 남기고 나머지는 몇 줄을 접었는지 알려 주는 한 줄로 접으며, 두 텍스트가 완전히 같으면 파일을 통째로 되돌려 보여 주는 대신 같다고 알려 줍니다. 줄 바꿈으로 긴 줄을 접을지 가로로 흘릴지 고를 수 있고, 추가·삭제된 줄 수가 결과 위에 표시됩니다. 복사와 다운로드는 화면에서 접혀 있든 앞 2,000행만 그려져 있든 상관없이 언제나 전체 결과를 통합 diff 형식의 .txt로 내줍니다.

무시 규칙, 문법 강조, 사전 정리

무시 규칙을 켜고 한 줄에 정규식 하나씩 적으면 — 날짜를 걸러 내는 [0-9]{4}-[0-9]{2}-[0-9]{2}, 빌드 번호나 세션 ID 패턴 같은 것들 — 규칙에 걸린 부분은 비교할 때만 빠지고 결과에는 원래 글자가 그대로 남습니다. 정규식으로 성립하지 않는 줄은 몇 번째 줄인지 알려 주고 적용하지 않으므로, 오타 난 규칙이 조용히 적용된 척하는 일이 없습니다. 무시 옵션도 같은 원칙이라, 공백 무시로 들여쓰기만 바꾼 코드를 비교해도 실제 공백은 그대로 보입니다. 문법 강조에서 JavaScript·TypeScript·Python·Java·Go·SQL·JSON·YAML 여덟 가지 중 하나를 고르면 비교하면서 코드에 색이 입혀지고, 색과 변경 표시가 같은 경계로 잘려 바뀐 문자열이 색과 표시를 동시에 받습니다. 강조는 한 줄씩만 읽으므로 블록 주석은 그 줄 끝까지만 색이 칠해집니다. 애초에 줄이 맞지 않는 텍스트를 위해 양쪽 텍스트를 한 번에 손보는 버튼도 넷 있습니다 — 줄 정렬, 줄바꿈을 공백으로, 여분 공백 제거, 소문자로. 이 버튼들은 눈에 보이는 상자의 내용을 실제로 고쳐 쓴다는 점에서 무시 옵션과 다릅니다.

크기, 공유, 프라이버시

내부적으로는 토큰에 대해 최장 공통 부분수열(LCS) 비교를 수행합니다 — 줄 모드에서는 줄을, 단어 모드에서는 단어와 그 사이의 공백 구간을 토큰으로 삼아 추가·삭제의 최소 집합을 찾아냅니다. 크다는 이유로 거절하는 입력은 없습니다. 정확한 표에 담기지 않는 덩어리는 양쪽에 딱 한 번씩만 나오는 줄(앵커)을 기준으로 쪼개 각 구간을 따로 비교하며, 한쪽 2만 줄짜리도 정확하게 비교합니다. 앵커가 하나도 없는 덩어리는 통째로 바뀐 것으로 표시하고 그 사실을 화면에 밝힙니다 — 거친 답을 최소 답인 척하지 않습니다. 입력이 20만 자를 넘으면 타이핑마다 다시 비교하지 않고 비교 버튼을 기다리며, 4,000자가 넘는 한 줄은 줄 안쪽을 맞추는 대신 통째로 바뀐 것으로 표시합니다. 링크 만들기는 두 텍스트와 설정(비교 단위, 보기, 무시 옵션 두 가지, 무시 규칙, 문법 강조 언어)을 압축해 주소 자체에 담으므로 계정도 업로드도 필요 없고, 코드가 4,000자를 넘으면 몇 자가 나왔는지 알려 주며 만들지 않습니다. 단축키는 Ctrl+Alt+C 비교, Ctrl+Alt+S 좌우 바꾸기, Ctrl+Alt+R 지우기입니다. 모든 처리는 브라우저 안에서 이루어지며 아무것도 업로드되지 않습니다.

자주 묻는 질문

줄 모드 대신 단어 모드는 언제 쓰나요?

줄 모드는 줄 전체를 비교하므로 단어 하나만 바뀌어도 그 줄 전체가 삭제 후 재추가로 표시됩니다 — 줄이 단위인 코드·설정·목록에 적합합니다. 단어 모드는 토큰 단위로 비교해 한 줄 안에서 바뀐 단어만 강조하므로, 산문이나 문장, 편집한 문단을 볼 때 훨씬 읽기 좋습니다.

대소문자 무시·공백 무시 옵션이 텍스트를 바꾸나요?

아니요. 토큰을 비교하는 방식에만 영향을 줍니다. 대소문자 무시는 대소문자에 상관없이 글자를 비교하고, 공백 무시는 비교 전에 공백을 제거해 서식이나 들여쓰기를 바꾼 텍스트가 변경으로 잡히지 않게 합니다. 강조된 출력은 붙여넣은 원본 문자를 그대로 보여 줍니다.

한쪽 내용을 다른 쪽으로 옮겨 합칠 수 있나요?

네. 보기를 좌우 나란히로 바꾸면 바뀐 줄 덩어리마다 첫 줄에 → ← 버튼이 나타납니다. →는 그 덩어리의 왼쪽 내용을 오른쪽 상자에 쓰고 ←는 반대로 동작하며, 덩어리 바깥의 줄은 글자 하나 손대지 않고 그쪽 텍스트가 쓰던 줄바꿈(LF/CRLF)까지 그대로 둡니다. 합친 결과는 편집 가능한 상자에 들어가므로 이어서 고치거나 다시 비교할 수 있습니다.

비교 결과를 링크로 공유할 수 있나요?

링크 만들기를 누르면 두 텍스트와 설정(비교 단위, 보기, 대소문자·공백 무시, 무시 규칙, 문법 강조 언어)이 압축돼 주소 자체에 담기고, 주소창에 반영되면서 클립보드에도 복사됩니다. 서버에 올리는 것도 계정도 없어서 링크를 연 사람은 누구나 같은 비교를 봅니다. 다만 전부 주소 안에 들어가야 하므로 한도가 있습니다 — 코드가 4,000자를 넘으면 몇 자가 나왔는지 알려 주며 링크를 만들지 않습니다.

로그의 타임스탬프나 빌드 번호를 무시하고 비교할 수 있나요?

네. 무시 규칙을 켜고 한 줄에 정규식 하나씩 적으면 됩니다. 예를 들어 <code>[0-9]{4}-[0-9]{2}-[0-9]{2}</code>를 적으면 날짜만 다른 두 로그 줄이 같은 줄로 처리되고, 결과에는 실제 날짜가 그대로 보입니다. 정규식으로 성립하지 않는 줄은 몇 번째 줄인지 알려 주고 적용하지 않으므로, 오타가 비교 기준을 조용히 바꾸는 일이 없습니다.

Word 문서(.docx)도 비교할 수 있나요?

.docx나 .odt 파일을 양쪽 상자 위로 끌어다 놓으면 브라우저 안에서 압축을 풀어 글자만 꺼내 넣습니다. 두 형식 모두 압축된 XML이라 변환기도 업로드도 필요 없습니다. 10 MB까지 받고, 그 밖의 파일은 텍스트로 읽습니다. PDF는 여기서 읽지 않으니 PDF 텍스트 추출로 먼저 뽑아 붙여넣으세요.

긴 파일에서 바뀐 부분만 볼 수 있나요?

같은 줄 접기를 켜면 변경 지점 앞뒤 세 줄만 남기고 나머지는 몇 줄을 접었는지 적힌 한 줄로 접습니다. 한 화면 보기와 좌우 나란히 보기 모두에서 동작하고, 두 텍스트가 완전히 같으면 같다고 알려 줍니다. 화면에는 앞 2,000행까지만 그리고 그 사실을 밝히지만, 복사와 다운로드는 언제나 전체 결과를 담습니다.

코드 문법 강조도 되나요?

JavaScript, TypeScript, Python, Java, Go, SQL, JSON, YAML 여덟 가지를 지원합니다. 색과 변경 표시가 같은 경계로 잘려서 바뀐 문자열에 색과 표시가 함께 들어갑니다. 다만 한 줄씩 읽는 방식이라 — diff는 줄을 순서 없이 보여 주므로 줄 사이에 상태를 이어 가면 엉뚱한 곳에 색이 칠해집니다 — 여러 줄에 걸친 블록 주석은 그 줄 끝까지만 색이 칠해집니다.

얼마나 큰 텍스트까지 비교되나요?

크다는 이유로 거절하는 입력은 없습니다. 큰 입력은 양쪽에 한 번씩만 나오는 앵커 줄을 기준으로 쪼개 비교하므로 한쪽 2만 줄도 정확하게 처리됩니다. 앵커가 없는 덩어리는 통째로 바뀐 것으로 표시하고 그 사실을 화면에 밝힙니다. 입력이 20만 자를 넘으면 타이핑마다 자동으로 다시 비교하지 않으니, 준비가 되면 비교 버튼을 누르세요.