# So sánh văn bản

URL: https://discuvr.org/text-diff/?hl=vi
Last updated: 2026-11-07
MCP tool: `compare_texts`

So sánh hai văn bản theo từng dòng: phần thêm, xóa hay thay đổi, từ thay đổi được tô sáng. Có thể bỏ qua chữ hoa/thường hoặc khoảng trắng. Không lưu gì.

Một hợp đồng được gửi lại với những chỉnh sửa không ai báo trước. Một tệp cấu hình chạy được trên máy chủ này nhưng không chạy trên máy chủ kia. Dán cả hai phiên bản vào đây và xem chính xác điều gì đã thay đổi, từng dòng một, với các từ thay đổi được tô sáng.

## Chức năng

- So sánh từng dòng, các dòng thêm, xóa và thay đổi được đánh dấu và đánh số.
- Các từ thay đổi được tô sáng bên trong những dòng đã chỉnh sửa.
- Bỏ qua chữ hoa/thường hoặc khoảng trắng thừa khi chỉ nội dung là quan trọng.
- Tỷ lệ tương đồng và số dòng được thêm, xóa và thay đổi.
- Không có gì bạn dán vào được lưu hay ghi nhật ký.

## Cách thức hoạt động

1. Dán văn bản gốc ở bên trái và văn bản đã sửa ở bên phải.
2. Nhấn So sánh.
3. Đọc các dòng được đánh dấu, hoặc đổi bên để xem thay đổi theo chiều ngược lại.

## Ví dụ thực tế: kiểm tra hợp đồng được gửi lại

Dán bản bạn đã gửi ở bên trái và bản được gửi lại ở bên phải. Mỗi điều khoản thay đổi hiện thành một dòng thay đổi, với các từ đã sửa được tô sáng, nên thời hạn thanh toán bị đổi từ 30 thành 45 ngày hay một mức trần trách nhiệm bị xóa đều dễ nhận ra. Giữ mỗi điều khoản trên một dòng để có kết quả rõ nhất, và bật bỏ qua khoảng trắng nếu bên kia chỉ đổi khoảng cách hoặc thụt lề, để chỉ những thay đổi về câu chữ được đánh dấu.

## Cách so sánh hoạt động

Văn bản được so sánh từng dòng trước, vì vậy nên để mỗi điều khoản, thiết lập hoặc bản ghi trên một dòng. Các dòng bị sửa (không phải thêm hay xóa) được ghép cặp, rồi các từ bên trong được so sánh lại để tô sáng đúng chỗ thay đổi. Tô sáng từ áp dụng khi hai phiên bản của một dòng cộng lại không quá 1.000 ký tự, trong giới hạn 50.000 ký tự dòng đã sửa cho mỗi lần so sánh; dòng dài hơn được đánh dấu cả dòng. Mỗi bên chứa tối đa 200.000 ký tự và 5.000 dòng.

## Các tùy chọn bỏ qua bỏ qua những gì, và điều gì vẫn tính là thay đổi

Bỏ qua khoảng trắng thừa gộp mọi chuỗi dấu cách và tab thành một dấu cách và cắt chúng ở hai đầu mỗi dòng, nên một dòng có tab hoặc dấu cách ở cuối sẽ khớp với cùng các từ được gõ bằng dấu cách đơn. Nó không xóa hẳn dấu cách: "ab" và "a b" vẫn khác nhau. Một dòng trống, hoặc dấu xuống dòng sau dòng cuối của chỉ một trong hai văn bản, vẫn tính là một dòng được thêm. Bỏ qua hoa thường dùng phép gập chữ (case folding) của Unicode, nên "Straße" khớp với "STRASSE". Khi một tùy chọn che đi khác biệt, dòng được hiển thị như trong văn bản đã sửa. Ký tự xuống dòng của Windows (CRLF) và Unix được coi là như nhau; văn bản dùng xuống dòng của Mac đời cũ (chỉ CR) được đọc thành một dòng dài.

## Điểm tương đồng đo điều gì

Độ tương đồng so sánh cả dòng, không phải ký tự: bằng hai lần số dòng khớp chia cho tổng số dòng của cả hai bên. Mười dòng có một dòng bị sửa cho 90%, nhưng văn bản một dòng đổi một từ cho 0%, dù hầu hết các từ vẫn giống nhau. Để đo theo câu, hãy đặt mỗi câu trên một dòng riêng trước. Trong một khối bị sửa, các dòng thay đổi được ghép theo thứ tự với các dòng bên kia; nếu một bên của khối có nhiều dòng hơn, các dòng dư được tính là thêm hoặc xóa.

## Câu hỏi

**Vì sao cả một đoạn văn bị đánh dấu là thay đổi?**

Một đoạn không có ngắt dòng là một dòng duy nhất, nên chỉ một từ bị sửa cũng đánh dấu cả dòng. Các từ thay đổi bên trong vẫn được tô sáng khi hai phiên bản của dòng cộng lại không quá 1.000 ký tự; đoạn dài hơn được đánh dấu cả đoạn. Tách văn bản thành câu hoặc điều khoản trước sẽ cho tô sáng chính xác hơn và số liệu hữu ích hơn.

**Tôi có thể so sánh hai cột Excel không?**

Có. Sao chép từng cột và dán mỗi cột vào một bên; mỗi ô trở thành một dòng. Việc so sánh đi theo thứ tự hàng, nên bạn thấy hai danh sách lệch nhau từ đâu và hàng nào được chèn thêm hay bị xóa. Nếu thứ tự không quan trọng, hãy sắp xếp cả hai danh sách trước bằng Sắp xếp A đến Z trong công cụ Chuyển đổi kiểu chữ, để chỉ những mục thêm và bớt thực sự được đánh dấu. Bật Bỏ qua hoa thường và Bỏ qua khoảng trắng thừa để bỏ qua chữ hoa và khoảng trắng lạc. Để kiểm tra ngay trong Excel: =EXACT(A2,B2) so sánh hai ô cùng hàng và phân biệt chữ hoa thường (=A2=B2 thông thường thì không), còn =COUNTIF(B:B,A2)=0 trả về TRUE cho giá trị ở cột A không có trong cột B. COUNTIF không phân biệt chữ hoa thường và coi * và ? là ký tự đại diện, nên hãy đặt ~ trước chúng khi chúng là một phần dữ liệu.

**Tôi có thể so sánh tài liệu Word hoặc PDF không?**

Sao chép văn bản từ từng tài liệu rồi dán vào. Định dạng như chữ đậm hay phông chữ không được so sánh, chỉ có từ và dòng.

**Văn bản có thể dài bao nhiêu?**

Tối đa 200.000 ký tự và 5.000 dòng mỗi bên.

**Văn bản của tôi có được lưu không?**

Không. Hai văn bản được so sánh và trả về trong cùng một yêu cầu, không bao giờ được ghi vào cơ sở dữ liệu hay nhật ký.

**Tôi có thể so sánh hai tệp JSON hoặc hai đoạn code không?**

Có, nhưng việc so sánh diễn ra theo từng dòng, nên JSON đã nén trên một dòng sẽ hiện thành một dòng thay đổi duy nhất. Hãy định dạng cả hai phiên bản trước bằng Trình định dạng JSON (giữ nguyên thứ tự khóa), để mỗi khóa nằm trên một dòng riêng và chỉ những thay đổi giá trị thật được đánh dấu. Code so sánh tốt ngay như hiện tại; bật Bỏ qua khoảng trắng thừa nếu chỉ có thụt lề thay đổi.

**Làm sao so sánh hai phiên bản ngay trong Word hoặc Google Tài liệu?**

Trong Word, mở một tài liệu và chọn Review > Compare > Compare Documents, rồi chọn tệp gốc và tệp đã sửa: Word mở một tài liệu thứ ba hiển thị mọi khác biệt dưới dạng thay đổi được theo dõi, kể cả thay đổi định dạng. Trong Google Tài liệu, mở một phiên bản và chọn Tools > Compare documents, rồi chọn phiên bản kia: bạn nhận được một tài liệu mới trong Drive với các khác biệt dưới dạng đề xuất chỉnh sửa, và cần quyền chỉnh sửa để dùng. Hãy dùng trang này khi hai văn bản không cùng là tệp Word hay cùng là Google Tài liệu, chẳng hạn một điều khoản trong email so với bản PDF đã ký: dán từng bên, các từ thay đổi được tô sáng và không có gì được lưu lại.

**Công cụ có phát hiện dòng bị di chuyển không?**

Không. Việc so sánh đi theo thứ tự các dòng, nên một dòng bị chuyển sang chỗ khác sẽ hiện là bị xóa ở vị trí cũ và được thêm ở vị trí mới, và được tính một lần trong mỗi tổng. Ví dụ: A, B, C so với B, C, A cho 1 dòng bị xóa, 1 dòng được thêm và độ tương đồng 66,7%. Nếu dòng bị di chuyển nằm cạnh một dòng đã sửa, hai dòng đó cũng có thể bị ghép cặp và hiện thành một dòng thay đổi. Để kiểm tra hai danh sách có cùng các dòng bất kể thứ tự, hãy sắp xếp cả hai trước bằng Sắp xếp A đến Z trong công cụ Chuyển đổi kiểu chữ.

**Làm sao so sánh hai tệp văn bản bằng dòng lệnh?**

Trên Windows, lệnh fc /n cu.txt moi.txt trong Command Prompt liệt kê các khối khác nhau kèm số dòng; thêm /c để bỏ qua chữ hoa/thường hoặc /w để gộp khoảng trắng và tab. Trên macOS và Linux, diff -u cu.txt moi.txt in ra unified diff; diff -i bỏ qua chữ hoa/thường và diff -b bỏ qua thay đổi về số lượng khoảng trắng. Nếu đã cài Git, git diff --no-index cu.txt moi.txt chạy trên mọi hệ thống, kể cả ngoài kho mã, và thêm --word-diff sẽ đánh dấu các từ thay đổi. Hãy dùng trang này khi văn bản không nằm trong tệp, chẳng hạn một điều khoản trong email so với điều khoản trong PDF, hoặc khi bạn muốn thấy các từ thay đổi được tô sáng cạnh nhau mà không cần terminal.

## Thêm trong Văn phòng & Dữ liệu

- [CSV sang Excel](https://discuvr.org/csv-to-excel/?hl=vi)
- [Ký PDF](https://discuvr.org/sign-pdf/?hl=vi)
- [Che thông tin](https://discuvr.org/redact/?hl=vi)
- [IP của tôi là gì](https://discuvr.org/what-is-my-ip/?hl=vi)

## Thường dùng cùng

- [Chuyển đổi kiểu chữ & công cụ dòng](https://discuvr.org/case-converter/?hl=vi)
- [Trình định dạng JSON](https://discuvr.org/json-formatter/?hl=vi)
- [Công cụ đếm từ & phân tích khả năng đọc hiểu](https://discuvr.org/word-counter/?hl=vi)

---

Part of Discuvr (https://discuvr.org/): Discuvr is a collection of free, focused tools for day-to-day professional work - office and data utilities, legal and compliance helpers, privacy and security checks, and developer formatters. Every tool has its own page, and most can also be called from ChatGPT or Claude over MCP.
