我可以在文本中检测非日文中文字符吗?

时间:2014-07-27 15:51:56

标签: javascript regex unicode

我有一些日文文本,但有些非日文字符混杂在一起。我注意到它,因为我使用的日语字体不支持它们,浏览器使用不同的字体呈现它们。据我所知,这些字符在日语中没有使用,所以他们错误地到达那里(文字来自OCR)。我使用this在文本中查找汉字,但它似乎包含了所有汉字而不仅仅是汉字。有没有可靠的方法来检测那些非日语字符,比如检查unicode的某些部分?

我能想到的唯一解决方案就是制作一份正在使用的汉字的完整列表(或更像是找到一个)并检查每个字符是否在列表中,但我怀疑它可能是一个有点慢。尽管如此,如果我找不到更好的方法来实现这一点,我可能会这样解决它。

1 个答案:

答案 0 :(得分:1)

  

有没有可靠的方法来检测那些非日语字符,比如检查unicode的某些部分?

没有。您需要简单地枚举所有日文字符,例如找到您的字体支持的所有字符:Finding out what characters a font supports

  

(...)检查每个字符是否在列表中,但我怀疑它可能有点慢。

不要使用列表,请使用hashset。如果您真的想要一个列表,请对其进行排序并使用二进制搜索。它不应该太慢。