如何测试特定字符(代码点)是否在特定脚本中?
问问题
140 次
1 回答
3
Java 表示枚举中的各种 Unicode 脚本,Character.UnicodeScript
例如Character.UnicodeScript.LATIN
. 这些匹配Unicode 脚本属性。
您可以通过将其代码点整数提交给of
该枚举上的方法来测试字符。
int codePoint = "a".codePointAt( 0 ) ;
Character.UnicodeScript script = Character.UnicodeScript.of( codePoint ) ;
if( Character.UnicodeScript.LATIN.equals( script ) ) { … }
或者:
boolean isLatinScript =
Character.UnicodeScript.LATIN
.equals(
Character.UnicodeScript.of( codePoint )
)
;
示例用法。
System.out.println(
Character.UnicodeScript.LATIN // Constant defined on the enum.
.equals( // `java.lang.Enum.equals()` comparing two constants defined on the enum.
Character.UnicodeScript.of( // Determine which Unicode script for this character.
"".codePointAt( 0 ) // Get the code point integer number of the first (and only) character in this string.
) // Returns a `Character.UnicodeScript` enum object.
) // Returns `boolean`.
);
错误的
仅供参考,Character
该类可让您询问代码点是否表示字符 , , isDigit
,等。isLetter
isLetterOrDigit
isLowerCase
于 2020-05-30T23:18:28.193 回答