确定Unicode代码点是否表示来自特定脚本(如拉丁脚本)的字符? [英] Identify if a Unicode code point represents a character from a certain script such as the Latin script?
本文介绍了确定Unicode代码点是否表示来自特定脚本(如拉丁脚本)的字符?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
Unicode将字符归类为属于script,例如Latin script。
如何测试特定字符(code point)是否在特定脚本中?
推荐答案
表示枚举中的各种unicode脚本,例如包括Character.UnicodeScript.LATIN
。这些与Unicode Script Properties匹配。
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`.
);
False
仅供参考,Character
类允许您询问代码点是否表示isDigit
、isLetter
、isLetterOrDigit
、isLowerCase
等字符。
这篇关于确定Unicode代码点是否表示来自特定脚本(如拉丁脚本)的字符?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文