Làm cách nào loại bỏ các ký tự không thuộc bảng mã ASCII? (How to remove non-ascii characters from a string?)





Trong công việc coding chúng ta thường xử lý trên các dữ liệu văn bảng, trong đó thỉnh thảo cũng có vài xử lý liên quan tới ký tự ASCII. Trong bài này sẽ hướng dẫn cách loại bỏ các ký tự không phải là ASCII từ chuỗi(string) bằng cách sử dụng regular expression.





Nếu bạn chưa biết bảng mã ASCII là gì thì hãy tham khảo bài viết Mã ký tự ASCII.

Dưới đây là mã code để thực hiện việc loại bỏ ký tự không phải thuộc bảng mã ký tự ASCII.
/**
 * @(#)JavaRemoveNon-ASCII.java
 *
 * JavaRemoveNon-ASCII application
 *
 * @author BUI NGOC SON
 * @version 1.00 2014/3/4
 */

public class JavaRemoveNonASCII {
   
    public static void main(String[] args) {
       
        String strObj = "Welcome¢¥¦ to£§ V¤®®®µNLI¶VES©©©©.NET";
       
        strObj = strObj.replaceAll("[^\\p{ASCII}]+", "");
        System.out.println("After removing non ASCII chars: \"" + strObj + "\"");
       
    }
}

Sau chay kết quả sẽ là:
After removing non ASCII chars: "Welcome to VNLIVES.NET"
























No comments:

Post a Comment