2011-07-25 174 views
4

我有一段Java代码正在检查它是两个Unicode字符之间:Unicode字符u00ff

LA(2) >= '\u0003' && LA(2) <= '\u00ff' 

我明白\u0003代表END OF TEXT\u00ffLATIN SMALL LETTER Y WITH DIAERESIS,但什么介于这些点? (检查LA(2)是什么?)

例如,是拉丁字符,数字字符还是带有口音的字符,所有ASCII字符或其他?

+1

请在[Unicode代码表](http://www.unicode.org/charts/PDF/U0080.pdf)(PDF)上自己查看。 –

回答

3

它是Latin 1减去代码点U + 0000,U + 0001和U + 0002。这包括美国键盘上常见的东西,大量的控制字符(在U + 0020之下和U + 007F和U + 009F之间)以及一些其他拉丁字符,可用于编写大部分西欧语言。

enter image description here

0

这是除前3个代码外的基本latin1字符集。

0x0000 - 0x007F : Basic Latin (128) 
0x0080 - 0x00FF : Latin-1 Supplement (128) 

该代码可能会检查该字符是否可以作为单字节char(latin1编码)输出。

+0

字符集称为拉丁文1,基本拉丁文就是Unicode中的ASCII码块,正如您所注意的那样。但是没有“基本拉丁文1”这样的东西。 – Joey

+0

我不知道你为什么写这个 –

+0

因为你在答案的第一句中使用的术语不清楚,在技术上是不正确的。 – Joey