是否使用非拉丁语系语言MySql的全文搜索能够合理? (希伯来语,阿拉伯语,日语......)
另外:做了一些测试......它有一些问题,希伯来语。 示例:名称发音一样但寻找一个找不到其他的,因为这是在希伯来文常见的拼写错误,看来我将不得不做一些数据操作为它完美地工作。
是否使用非拉丁语系语言MySql的全文搜索能够合理? (希伯来语,阿拉伯语,日语......)
另外:做了一些测试......它有一些问题,希伯来语。 示例:名称发音一样但寻找一个找不到其他的,因为这是在希伯来文常见的拼写错误,看来我将不得不做一些数据操作为它完美地工作。
虽然在MySQL希伯来语的支持是有限的,你的问题是更多的使用不正确的拼写,那么从这个角度MySQL服务器的功能障碍的人的问题。 当你拼错在谷歌的话,它会告诉你一个建议,你可以点击该建议,以搜索项。
也许你可以建立一些程序具有相同的行为,例如,你可以创建一个有2场,一个包含常用拼错的单词,另一个包含正确拼写的表。 然后,您可以建立一个发现拼写错误的单词,并显示建议的程序。
只要你整理被正确设定,它的工作出色。
统一适用于大多数的这方面的工作,当然。 但是,这并没有真正的拉丁字符转换成他们很好(例如,在荷兰整理aa
将被识别为å
)。
是的,但是,查了一下停用词是。
Japanese
和Chinese
使用自己的空格符号MySQL
不理解。
请确保你要索引文本的话,它们之间用ASCII
分隔符(空格,逗号等)。 外界任何ASCII
范围将可能无法正常工作。
此外,你可能需要修正ft_min_word_len
:默认情况下, MySQL
不会索引字短于4
个字符,大多数Japanese
和Chinese
的话。
在Cyrillic
语言transilteration错误是很常见的。
所有从这个序列的字母: АВЕКМНОРСТуХ / ABEKMHOPCTyX
在大多数字体区分。
最严重的是西里尔С
/拉丁C
:这两个符号位于键盘上的一个键,并没有什么不同在大多数字体可言,但他们有不同的代码。
MySQL
也不会追上它。
是 MySQL的全文搜索行之有效的阿拉伯语 。 只要确保在需要的地方如下:
COLLATION = utf8_unicode_ci
& CHARACTER SET = utf8
。 (数据库,表和列)。 ft_min_word_len = 3
(见show variables like "ft_%";
)