我正在编写一个java应用程序,但我一直停留在这一点上。
基本上我有一个中文字符串,还有一些可能的拉丁字符或数字,让我们这样说:
查詢促進民間參與公共建設法(210BOT法).我想拆分那些中文字符,除了上面的"BOT“之外的拉丁文或数字。所以,在最后,我会得到这样的列表:
[ 查, 詢, 促, 進, 民, 間, 參, 與, 公, 共, 建, 設, 法, (, 210, BOT, 法, ), ., ]
我如何解决这个问题(对于java)?
发布于 2009-11-05 03:01:24
这是一个我会采用的方法。
可以使用Character.codePointAt(char[] charArray,int index)返回字符数组中字符的Unicode值。
您还需要一个拉丁Unicode字符的映射。
如果你查看Character.UnicodeBlock的源代码,你会发现完整的拉丁语块是区间0x0000,0x0249。所以基本上你要检查你的Unicode代码点是否在这个间隔内。
我怀疑有一种方法可以只使用Character.Subset来检查它是否包含您的字符,但我还没有研究过。
https://stackoverflow.com/questions/1675739
复制相似问题