Chuyển đến nội dung

Chuyển chữ hoa chữ thường

CHỮ HOA, chữ thường, Viết Hoa Đầu Từ, Viết hoa đầu câu và mọi kiểu chữ của lập trình viên — cùng hai điều mà các công cụ khác làm sai: quy tắc Title Case thực sự, và những ngôn ngữ mà “i” không viết hoa thành “I”.

  • Không bao giờ lưu trữ
  • Không xếp hàng, không phải chờ
  • Không cần đăng ký, không watermark
Chuyển thành
Quy tắc ngôn ngữ
Đã chuyển

Đã chuyển sẽ hiện ở đây.

Cách hoạt động

1

Dán văn bản

Một cụm từ, một danh sách, một tên biến — bất cứ thứ gì.

2

Chọn kiểu chữ

Mỗi kiểu đều có ví dụ, nên bạn không phải đoán “kebab-case” trông như thế nào.

3

Sao chép kết quả

Chuyển từng dòng riêng nếu bạn có cả một danh sách cần xử lý cùng lúc.

Mỗi kiểu chữ áp dụng quy tắc nào

Viết Hoa Đầu Từ và Viết hoa đầu câu xử lý những chữ hoa bạn đã gõ theo hai cách ngược nhau, và đó là điều khiến người dùng bất ngờ. Viết Hoa Đầu Từ giữ nguyên mọi từ có chữ hoa sau chữ cái đầu tiên — iPhone, NASA, McDonald — và chỉ quyết định với các từ còn lại. Viết hoa đầu câu chuyển cả đoạn thành chữ thường trước rồi viết hoa sau mỗi dấu chấm, dấu chấm hỏi, dấu chấm than hoặc dấu ba chấm, nên NASA thành Nasa và không có danh sách ngoại lệ nào bảo vệ nó. Viết hoa đầu câu cũng không có quy tắc cho chữ viết tắt, nên “e.g. this” bị thêm chữ hoa ở chỗ mà công cụ đếm số từ trên trang này hoàn toàn không tách câu. Với một đoạn đầy từ viết tắt, Viết Hoa Đầu Từ là lựa chọn an toàn, còn Viết hoa đầu câu cần được đọc lại sau đó.

Cài đặt ngôn ngữ mặc định là không chọn ngôn ngữ nào. Chữ hoa và chữ thường dùng quy tắc đơn giản của trình duyệt trừ khi bạn chọn Tiếng Thổ Nhĩ Kỳ, Tiếng Azerbaijan, Tiếng Litva hoặc Tiếng Hy Lạp trong danh sách, nên văn bản tiếng Thổ Nhĩ Kỳ chuyển đổi ở cài đặt mặc định sẽ ra chữ i có chấm và không chấm theo kiểu tiếng Anh — trang sẽ nhận ra chữ ı không chấm hoặc İ có chấm trong nội dung bạn dán và báo cho bạn thay vì lặng lẽ cho qua. Cảnh báo về chữ ß của tiếng Đức thành SS áp dụng cho CHỮ HOA và CONSTANT_CASE, hai kiểu bạn nhiều khả năng cần nhất; các kiểu xen kẽ và đảo chữ hoa cũng viết hoa chữ này, nhưng không cảnh báo.

Viết Hoa Đầu Từ quyết định từng từ chỉ dựa trên khoảng trắng, nên mọi thứ nối bằng dấu gạch nối hay dấu gạch chéo đều được tính là một từ và chỉ được một chữ hoa: “mother-in-law” thành “Mother-in-law”. Các kiểu chữ lập trình tách theo tiêu chí hoàn toàn khác — chữ hoa, chữ số, dấu cách, dấu gạch dưới, dấu gạch nối, dấu chấm và dấu gạch chéo — kèm quy tắc bổ sung giữ một chuỗi chữ hoa liền nhau, đó là điều biến XMLHttpRequest thành xml_http_request thay vì xmlhttp_request. Chuyển một danh sách theo từng dòng chỉ tách theo ký tự line feed, nên ký tự carriage return từ file Windows vẫn dính ở cuối mỗi dòng và đi theo vào kết quả.

Khi bạn cần công cụ khác

Bất cứ thứ gì cần đảo ngược được thì hoàn toàn không nên viết hoa. Không có cách nào chuyển từ SS về ß, từ chữ hoa Hy Lạp không dấu về bản gốc có dấu, hay từ một danh sách tên mà bạn cần các chữ hoa bên trong — thông tin đã mất chứ không phải bị ẩn, nên hãy giữ bản gốc bên cạnh bất cứ thứ gì bạn chuyển đổi. Đó không phải hạn chế của trang này; đó là bản chất của việc đổi chữ hoa chữ thường.

Với một file thay vì văn bản dán vào, những lệnh dòng lệnh hiển nhiên lại là cái bẫy. tr và hàm toupper của awk chỉ hỗ trợ ASCII: chúng sẽ viết hoa các chữ cái tiếng Anh trong danh sách tên và bỏ qua mọi chữ có dấu, làm hỏng danh sách một cách âm thầm mà trông như đã chạy đúng. Một dòng lệnh Python hoặc Node thì xử lý đúng chuẩn Unicode, và với tiếng Thổ Nhĩ Kỳ, Azerbaijan, Litva hoặc Hy Lạp, bạn cần một lời gọi hàm có tham số locale — đúng bốn ngôn ngữ trang này cung cấp, vì cùng lý do. Đổi tên cả thư mục file sang chữ thường lại là việc khác nữa, và là việc mà hệ thống file không phân biệt chữ hoa chữ thường, mặc định trên macOS và Windows, sẽ coi README và readme là cùng một tên.

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

Văn bản của tôi có bị lưu trữ ở đâu không?

Không. Không lưu trữ gì cả và không gửi yêu cầu nào đi. Bạn có thể ngắt kết nối internet sau khi trang tải xong và công cụ vẫn hoạt động.

Title Case ở đây có gì khác biệt?

Nó tuân theo quy tắc văn phong thực sự của tiếng Anh thay vì chỉ viết hoa mọi từ. “the lord of the rings” thành “The Lord of the Rings” — “of” và chữ “the” thứ hai vẫn viết thường, vì mạo từ, liên từ và giới từ ngắn đều viết thường. Từ đầu tiên và từ cuối cùng luôn được viết hoa dù là từ phụ, nên “of mice and men” thành “Of Mice and Men”. Hầu hết công cụ trực tuyến cho ra “The Lord Of The Rings”, điều mà không sách hướng dẫn văn phong nào chấp nhận.

Vì sao công cụ giữ nguyên “iPhone” và “NASA”?

Vì một từ có chữ hoa ở giữa là được cố ý viết như vậy. Đổi “iPhone” thành “Iphone” hay “NASA” thành “Nasa” sẽ sai, nên mọi từ có chữ hoa bên trong đều được giữ nguyên.

Tùy chọn tiếng Thổ Nhĩ Kỳ dùng để làm gì?

Tiếng Thổ Nhĩ Kỳ và tiếng Azerbaijan có hai chữ i: một chữ có chấm và một chữ không chấm. Chữ thường “i” viết hoa thành “İ” (có chấm), còn “I” viết thường thành “ı” (không chấm). Vì vậy “istanbul” viết hoa theo quy tắc tiếng Anh cho ra “ISTANBUL”, không phải tên thành phố — phải là “İSTANBUL”. Đây là nguồn gốc nổi tiếng của nhiều lỗi thực tế, và đó là lý do ngôn ngữ được đưa ra để chọn thay vì mặc định. Tiếng Hy Lạp và tiếng Litva cũng có quy tắc riêng, và cả hai đều có ở đây.

Công cụ có chuyển camelCase sang snake_case không?

Có, theo mọi chiều — camelCase, PascalCase, snake_case, CONSTANT_CASE, kebab-case, dot.case và path/case đều chuyển qua lại được với nhau. Từ viết tắt được xử lý đúng, vốn là phần thường bị lỗi: “XMLHttpRequest” được tách thành XML, Http và Request, cho ra “xml_http_request”. Công cụ chỉ tách ở chỗ chữ thường chuyển sang chữ hoa sẽ cho ra “xmlhttp_request”.

Chuyển sang chữ hoa có làm mất gì không?

Đôi khi có, và bạn sẽ được cảnh báo khi điều đó xảy ra. Chữ “ß” của tiếng Đức thành “SS” khi viết hoa và không thể tự động chuyển ngược lại — “STRASSE” có thể vốn là “Straße” hoặc “Strasse”. Tiếng Hy Lạp bỏ dấu khi viết hoa, điều này đúng với tiếng Hy Lạp nhưng cũng là một chiều.

Nên biết: Có hai phép chuyển làm mất thông tin và không thể đảo ngược. Chữ ß của tiếng Đức thành SS khi viết hoa và không có cách nào quay lại, vì SS cũng chỉ là hai chữ cái. Tiếng Thổ Nhĩ Kỳ và tiếng Azerbaijan có chữ i có chấm và không chấm, chuyển đổi khác với tiếng Anh — hãy chọn ngôn ngữ nếu văn bản của bạn thuộc một trong hai thứ tiếng này, nếu không i và I sẽ ra sai.

Đặt công cụ này lên website của bạn

Miễn phí cho mọi blog, trang lớp học hay bài viết hướng dẫn. Chỉ cần dán một đoạn mã là khách truy cập có thể dùng ngay trên trang của bạn.