溫馨提示×

如何驗證java utf字符串的有效性

小樊
82
2024-09-30 04:44:22
欄目: 編程語言

要驗證 Java 中的 UTF 字符串是否有效,您可以使用以下方法:

  1. 使用 isValid() 方法:Java 提供的 String 類有一個 isValid() 方法,用于檢查字符串是否由有效的 UTF-16 編碼字符組成。
public class Main {
    public static void main(String[] args) {
        String utfString = "Hello, 你好!";
        boolean isValid = utfString.isValid();
        System.out.println("Is the UTF string valid? " + isValid);
    }
}
  1. 使用正則表達(dá)式:您還可以使用正則表達(dá)式來驗證字符串是否僅包含有效的 UTF-8 字符。UTF-8 字符的范圍是 U+0000 到 U+10FFFF。
import java.util.regex.Pattern;

public class Main {
    public static void main(String[] args) {
        String utfString = "Hello, 你好!";
        boolean isValid = isValidUtf8(utfString);
        System.out.println("Is the UTF string valid? " + isValid);
    }

    public static boolean isValidUtf8(String input) {
        // 正則表達(dá)式匹配所有有效的 UTF-8 字符
        String regex = "^[\u0000-\u007F\u0080-\u07FF\u0800-\uFFFF\u{10000}-\u{10FFFF}]+$";
        Pattern pattern = Pattern.compile(regex, Pattern.UNICODE_CHARACTER_CLASS);
        return pattern.matcher(input).matches();
    }
}

這兩種方法都可以幫助您驗證 Java 中的 UTF 字符串是否有效。

0