Cách chuyển đổi chữ cái Unicode có dấu thành không dấu trong Java

Hướng dẫn cách chuyển đổi các ký tự Unicode có dấu thành ký tự không dấu trong Java bằng cách sử dụng `Normalizer` và biểu thức chính quy.

Trong bài viết này, chúng ta sẽ tìm hiểu cách sử dụng lớp Normalizer trong Java để loại bỏ dấu trong các ký tự Unicode, đặc biệt là chữ cái tiếng Việt. Phương pháp này rất hữu ích trong việc xử lý chuỗi khi cần so sánh hoặc tìm kiếm.

Mã Java:

import java.text.Normalizer;
import java.util.regex.Pattern;

public class RemoveDiacritics {
    public static void main(String[] args) {
        String textWithDiacritics = "Chào mừng bạn đến với Java!";
        String textWithoutDiacritics = removeDiacritics(textWithDiacritics);
        System.out.println(textWithoutDiacritics);
    }

    public static String removeDiacritics(String text) {
        // Chuyển đổi văn bản thành dạng chuẩn NFD
        String normalized = Normalizer.normalize(text, Normalizer.Form.NFD);
        // Biểu thức chính quy để loại bỏ các ký tự không phải chữ cái
        Pattern pattern = Pattern.compile("\\p{InCombiningDiacriticalMarks}+");
        // Thay thế các ký tự không dấu
        return pattern.matcher(normalized).replaceAll("").replaceAll("[^\\p{ASCII}]", "");
    }
}

Giải thích chi tiết từng dòng code:

  1. import java.text.Normalizer;: Nhập lớp Normalizer để xử lý chuỗi Unicode.
  2. String textWithDiacritics = "Chào mừng bạn đến với Java!";: Khai báo một chuỗi có dấu.
  3. String normalized = Normalizer.normalize(text, Normalizer.Form.NFD);: Chuyển đổi chuỗi sang dạng chuẩn NFD để tách ký tự cơ bản và dấu.
  4. Pattern pattern = Pattern.compile("\\p{InCombiningDiacriticalMarks}+");: Tạo một biểu thức chính quy để tìm các dấu kết hợp.
  5. return pattern.matcher(normalized).replaceAll("");: Loại bỏ tất cả các dấu kết hợp khỏi chuỗi.
  6. replaceAll("[^\\p{ASCII}]", "");: Loại bỏ tất cả các ký tự không phải ASCII.

Yêu cầu hệ thống:

  • Java phiên bản 8 trở lên

Cách cài đặt Java:

Tải Java từ trang web chính thức Oracle và làm theo hướng dẫn cài đặt.

Lời khuyên:

  • Phương pháp này có thể được sử dụng cho nhiều ngôn ngữ khác nhau, không chỉ tiếng Việt.
  • Hãy kiểm tra kỹ các chuỗi đầu vào để đảm bảo kết quả chính xác.
Tags: Unicode, Java


Các Hướng Dẫn Cùng Chủ Đề Đang Xem

Cách sử dụng Selenium để gửi đoạn mã JavaScript vào website trên Chrome

Hướng dẫn cách sử dụng Selenium trong Java để gửi đoạn mã JavaScript vào một trang web trên trình duyệt Chrome. Bài viết sẽ giúp bạn hiểu cách tương tác với DOM thông qua JavaScript.
Xử lý đa luồng trong Java

Hướng dẫn chi tiết cách xử lý đa luồng trong Java, bao gồm việc tạo và quản lý luồng sử dụng `Thread` và `Runnable`, đồng thời giới thiệu cách đồng bộ hóa dữ liệu giữa các luồng.
Cách SELECT dữ liệu từ database MySQL bằng Java

Hướng dẫn cách sử dụng Prepared Statements trong Java để truy vấn dữ liệu từ một bảng trong database MySQL một cách an toàn và hiệu quả.
Cách POST dữ liệu tới API bằng Java

Bài viết này hướng dẫn cách gửi dữ liệu tới API bằng phương thức POST trong Java, sử dụng thư viện HttpURLConnection và thư viện org.json để xử lý dữ liệu JSON.
Cách truyền Authentication Header Token khi POST dữ liệu tới API bằng Java

Hướng dẫn cách truyền token xác thực (Authentication Header Token) khi gửi dữ liệu qua phương thức POST tới API bằng ngôn ngữ lập trình Java. Bài viết cung cấp mã Java mẫu và giải thích chi tiết.
Cách UPDATE dữ liệu trong database MySQL bằng Java

Hướng dẫn cách sử dụng Prepared Statements trong Java để cập nhật dữ liệu trong một bảng của database MySQL một cách an toàn và hiệu quả.
Cách INSERT dữ liệu vào database MySQL bằng Java

Hướng dẫn cách sử dụng Prepared Statements trong Java để chèn dữ liệu vào một bảng trong database MySQL một cách an toàn và hiệu quả.
Cách tự động đăng nhập vào website sử dụng Selenium với Chrome trong Java

Bài viết hướng dẫn cách sử dụng Selenium với Chrome để tự động đăng nhập vào một trang web bằng Java. Giới thiệu cách thao tác với các phần tử trên trang web để thực hiện quá trình đăng nhập.
Cách ghi nội dung vào file Excel bằng Java

Hướng dẫn cách ghi dữ liệu vào file Excel bằng Java, sử dụng thư viện Apache POI để thao tác với file Excel một cách hiệu quả và đơn giản.
Đọc nội dung Excel bằng Apache POI trong Java

Hướng dẫn chi tiết cách đọc nội dung file Excel trong Java bằng thư viện Apache POI. Bài viết cung cấp đoạn mã mẫu, giải thích chi tiết từng dòng và hướng dẫn cài đặt thư viện cần thiết.

Đã thêm vào giỏ hàng