如果要比较的字符串包含 Unicode 增补字符(只能将它用于规范化的字符串中),
则使用 ICU 2.6.1
-
com.ibm.icu.text.UTF16.StringComparator
(Object,
Object)
-
com.ibm.icu.text.UTF16.StringComparator
(String,
String)
public static void main(String[] args){
String str = "\uFF10";
String str2 = "\uD800\uDC00";
UTF16.StringComparator compare = new UTF16.StringComparator(true, false, UTF16.StringComparator.FOLD_CASE_DEFAULT);
int result = compare.compare(str, str2);
System.out.println("UTF16.StringComparator: Result = " + result);
str = "\ud801\udc00";
str2 = "\ud801\udc28";
UTF16.StringComparator compare2 = new UTF16.StringComparator(true, true, UTF16.StringComparator.FOLD_CASE_DEFAULT);
result = compare2.compare(str, str2);
System.out.println("UTF16.StringComparator: Result (Ignore case) = " + result);
}
|
|