我需要将 mysql 数据库中的数据注入(inject)到 SOlR 索引中。 pb 是我的数据库中的字符采用 UTF8 格式,我需要将它们转换为 LATIN1,因为有重音符号。 有什么想法吗?
最佳答案
一般来说,这是不可能的,因为 UTF8 跨越了整个 Unicode 范围,目前有 1,112,064 个代码点,而 Latin1 不超过其中的 256 个。如果您的文本采用的语言完全被 Latin1 覆盖,您可以简单地过滤掉代表高于 255 的代码点的 UTF8 字符(实际执行此操作的方法取决于您正在使用且问题中未提及的技术)。
即使您的语言仅使用 256 以下的字母字符,您的文本也可能包含一些更高的 UTF8 非字母字符:这是一个常见问题,但是,当您想要使用 Latin1 作为搜索引擎索引时,您可能可以忽略非字母字符(其中包括表情符号,当今网络中非常常见的字符,YMMV)
我不明白为什么不能自始至终使用 UTF-8:Solr 支持它。
关于mysql - SOLR + MySQL : how to convert utf8 into latin1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42141643/