我有一些日文文本,但有些非日文字符混杂在一起。我注意到它,因为我使用的日语字体不支持它们,浏览器使用不同的字体呈现它们。据我所知,这些字符在日语中没有使用,所以他们错误地到达那里(文字来自OCR)。我使用this在文本中查找汉字,但它似乎包含了所有汉字而不仅仅是汉字。有没有可靠的方法来检测那些非日语字符,比如检查unicode的某些部分?
我能想到的唯一解决方案就是制作一份正在使用的汉字的完整列表(或更像是找到一个)并检查每个字符是否在列表中,但我怀疑它可能是一个有点慢。尽管如此,如果我找不到更好的方法来实现这一点,我可能会这样解决它。
答案 0 :(得分:1)
有没有可靠的方法来检测那些非日语字符,比如检查unicode的某些部分?
没有。您需要简单地枚举所有日文字符,例如找到您的字体支持的所有字符:Finding out what characters a font supports
(...)检查每个字符是否在列表中,但我怀疑它可能有点慢。
不要使用列表,请使用hashset。如果您真的想要一个列表,请对其进行排序并使用二进制搜索。它不应该太慢。