Bỏ qua menu, tới nội dung

Sắp xếp dòng A→Z tiếng Việt, theo số, độ dài hoặc ngẫu nhiên

Kiểm tra: 16/09/2026Nguồn: Căn cứ và nguồnChạy trên trình duyệt, không lưu dữ liệu

Đang tải công cụ…

Sắp xếp dòng A→Z cho 5 dòng “ô, a, đ, ă, e” ra đúng thứ tự bảng chữ cái tiếng Việt “a, ă, đ, e, ô”, trong khi hàm sắp xếp mặc định của JavaScript cho ra “a, e, ô, ă, đ”. Ngoài A→Z và Z→A, công cụ còn xếp theo độ dài, theo số trong dòng và trộn ngẫu nhiên. Danh sách xử lý trên trình duyệt, không lưu dữ liệu.

Cách sắp xếp dòng theo bảng chữ cái tiếng Việt

Công cụ so hai dòng bằng bộ so sánh chuỗi theo ngôn ngữ tiếng Việt của trình duyệt (Intl.Collator), không so theo mã ký tự.

  1. Chuẩn hoá văn bản về dạng dựng sẵn NFC, tách thành từng dòng.
  2. Bỏ dòng trống nếu bật “Bỏ dòng trống” (mặc định bật); bỏ dòng trùng nếu bật “Bỏ dòng trùng”, giữ lần xuất hiện đầu.
  3. So chữ theo thứ tự a, ă, â, b, c, d, đ, e, ê, g, h, i, k, l, m, n, o, ô, ơ, p, q, r, s, t, u, ư, v, x, y. Hai dòng chỉ khác nhau ở dấu thanh được xếp cạnh nhau.
  4. Số nằm trong chữ được so theo giá trị, nên “mục 2” đứng trước “mục 10”.
  5. Hai dòng bằng nhau theo quy tắc so giữ nguyên thứ tự ban đầu.
Nút chế độCách xếp
A → Z / Z → ATheo bảng chữ cái tiếng Việt, xuôi hoặc ngược
Ngắn → dài / Dài → ngắnTheo số ký tự của dòng; dòng dài bằng nhau xếp A→Z
Theo sốTheo số đầu tiên xuất hiện trong dòng; dòng không có số xuống cuối
Ngẫu nhiênTrộn đều mọi dòng; nút “Trộn lại” cho một thứ tự mới

Mặc định công cụ không phân biệt hoa/thường khi so; bật “Phân biệt hoa/thường” nếu cần “an” và “An” là hai mục khác nhau. Độ dài dòng tính theo ký tự như trang phương pháp đếm mô tả.

Vì sao sắp xếp mặc định đẩy chữ Đ xuống cuối

Hàm sort mặc định trong JavaScript so theo mã UTF-16, mà mọi chữ Việt có dấu dựng sẵn đều có mã lớn hơn chữ z.

Chữ “đ” mang mã U+0111, “ă” là U+0103, “ô” là U+00F4, còn “z” chỉ là U+007A. So theo mã thì “Đức” đứng sau “Yến”, và “ô” lại đứng trước “ă” vì U+00F4 nhỏ hơn U+0103. Nhiều công cụ sắp xếp trực tuyến viết cho tiếng Anh dùng đúng phép so này. Excel và Google Sheets so theo quy tắc ngôn ngữ nên thường tốt hơn, nhưng kết quả còn tuỳ bản cài đặt và ngôn ngữ vùng; tôi không dám hứa chúng luôn khớp bảng chữ cái, nên danh sách quan trọng vẫn nên soát lại chữ Đ và Ư.

Ví dụ: sắp tên học sinh cho danh sách lớp

Một giáo viên chủ nhiệm dán danh sách mới nhận đầu năm học; mọi kết quả trong bảng lấy từ bộ kiểm thử của công cụ.

Danh sách gốcChế độ, tuỳ chọnKết quả
ô, a, đ, ă, eA → Za, ă, đ, e, ô
ô, a, đ, ă, eZ → Aô, e, đ, ă, a
mục 10, mục 2A → Zmục 2, mục 10
10, 9, 100Theo số9, 10, 100
b, a, (dòng trống), bA → Z, bật Bỏ dòng trùnga, b · 1 dòng trùng đã bỏ

Chế độ theo số hiểu cách viết số của người Việt: “1.250.000 đ” được đọc là một triệu hai trăm năm mươi nghìn, “nặng 2,5kg” là hai phẩy năm. Nhờ vậy bảng giá dán từ website bán hàng xếp đúng từ rẻ đến đắt, không bị “1.250.000” chen trước “99.000”.

Danh sách lớp xếp theo tên, không theo họ

Danh sách lớp, sổ điểm và danh sách phòng thi ở Việt Nam thường xếp theo tên rồi mới tới họ đệm, còn công cụ so từ chữ đầu dòng, tức là họ.

Công cụ không có chế độ xếp theo tiếng cuối. Tôi chọn không thêm chế độ đó vì tên có thể có hai tiếng, có người ghi cả mã học sinh cuối dòng. Thay vào đó, bạn đảo tên lên đầu bằng tìm và thay thế có regex, sắp xếp dòng, rồi đảo lại:

  1. Ở công cụ tìm và thay thế, bật regex, tìm (.+) (.+), thay bằng $2, $1: “Nguyễn Văn An” thành “An, Nguyễn Văn”.
  2. Dán kết quả vào đây, chọn A → Z. “An, Nguyễn Thị” sẽ đứng trước “An, Nguyễn Văn”, rồi tới “Anh”, “Ân”, “Bình”.
  3. Quay lại tìm và thay thế, tìm (.+?), (.+), thay bằng $2 $1 để trả họ tên về như cũ.

Trường hợp đặc biệt: dấu thanh, chữ hoa, số lẫn trong chữ

Thứ tự dấu thanh giữa các chữ cùng gốc do dữ liệu ngôn ngữ của trình duyệt quyết định: trên trình duyệt dùng dữ liệu Unicode CLDR, “ca, cà, cả, cã, cá, cạ” xếp theo đúng thứ tự này.

Khi không phân biệt hoa/thường, “an” và “An” được coi là bằng nhau và giữ thứ tự dán vào. Dòng bắt đầu bằng dấu ngoặc, gạch đầu dòng hay chữ số được so luôn cả ký tự đó, nên “- Bình” có thể đứng trước “An”; bỏ ký hiệu đầu dòng trước khi sắp. Ở chế độ theo số, chỉ số đầu tiên trong dòng được dùng: “Lớp 10A1 – 42 học sinh” xếp theo 10, không theo 42.

Công cụ liên quan

Câu hỏi thường gặp

Sắp xếp tên theo bảng chữ cái tiếng Việt trong Excel thế nào?

Tách tên ra một cột riêng, chọn vùng dữ liệu, vào Data → Sort và xếp theo cột tên trước, cột họ đệm sau. Kết quả chữ Đ, Ư phụ thuộc cài đặt ngôn ngữ của Excel nên cần soát lại. Nếu chỉ có một cột họ tên, dán vào công cụ trên trang để sắp xếp dòng theo bảng chữ cái tiếng Việt.

Chữ Đ đứng sau chữ D hay sau chữ Z?

Theo bảng chữ cái tiếng Việt, Đ đứng ngay sau D và trước E. Nó chỉ nhảy xuống cuối khi phần mềm so theo mã ký tự, vì mã của Đ lớn hơn mã của Z. Công cụ này dùng quy tắc so của tiếng Việt, nên “Dung”, “Dũng” rồi mới tới “Đạt”, “Đức”.

Sắp xếp dòng có phân biệt chữ hoa, chữ thường không?

Mặc định không. “an” và “An” được coi là bằng nhau và giữ thứ tự như lúc dán vào. Bật “Phân biệt hoa/thường” thì hai dòng này khác nhau và chữ thường thường đứng trước. Tuỳ chọn này cũng áp dụng cho “Bỏ dòng trùng”: khi tắt, “An” và “an” chỉ còn lại một dòng.

Trộn ngẫu nhiên danh sách để bốc thăm có công bằng không?

Công cụ dùng thuật toán trộn Fisher–Yates với bộ sinh số ngẫu nhiên của trình duyệt, mỗi thứ tự có khả năng xuất hiện như nhau. Bộ sinh số này đủ cho chia nhóm, xếp chỗ ngồi hay thứ tự thuyết trình. Với bốc thăm có giải thưởng hoặc cần kiểm chứng sau này, nên dùng quy trình có người chứng kiến.

Vì sao dòng có số lại xếp sai khi chọn A → Z?

Chế độ A → Z so số trong chữ theo giá trị, nên “Bài 2” đứng trước “Bài 10”. Nếu bạn cần thứ tự kiểu máy tính cũ, “Bài 10” trước “Bài 2”, thì không có tuỳ chọn đó. Khi dòng bắt đầu bằng số tiền hay số lượng, chế độ Theo số cho kết quả rõ ràng hơn.

Căn cứ và nguồn

Kiểm tra: 16/09/2026. Thứ tự sắp xếp dòng phụ thuộc dữ liệu ngôn ngữ của trình duyệt; trình duyệt quá cũ có thể xếp dấu thanh khác đôi chút.

Mục lục
  1. Cách sắp xếp dòng theo bảng chữ cái tiếng Việt
  2. Vì sao sắp xếp mặc định đẩy chữ Đ xuống cuối
  3. Ví dụ: sắp tên học sinh cho danh sách lớp
  4. Danh sách lớp xếp theo tên, không theo họ
  5. Trường hợp đặc biệt: dấu thanh, chữ hoa, số lẫn trong chữ
  6. Công cụ liên quan
  7. Câu hỏi thường gặp
  8. Căn cứ và nguồn