php,中文和俄文搜索

php,中文和俄文搜索,php,utf-8,internationalization,full-text-search,sphinx,Php,Utf 8,Internationalization,Full Text Search,Sphinx,最后,我创建了一个关于三种语言的网站:英语、俄语和汉语。我希望如果我在应用程序和数据库中使用UTF-8,输入输出不会有任何问题(会有吗?) 但最可怕的是搜索。天气应该足够凉爽。它应该是全文,应该是索引,等等。我希望它能理解病态学,使用词干分析,等等 首先,我看了Zend_Search_Lucene,但从中我意识到它在中文方面有问题( 现在我在考虑Sphinx。它支持英文和俄文词干。我不知道中文有多好,我也不知道为它添加支持会有多困难。这是一线希望,但作为一个没有经验的Sphinx用户,我不认为我

最后,我创建了一个关于三种语言的网站:英语、俄语和汉语。我希望如果我在应用程序和数据库中使用UTF-8,输入输出不会有任何问题(会有吗?)

但最可怕的是搜索。天气应该足够凉爽。它应该是全文,应该是索引,等等。我希望它能理解病态学,使用词干分析,等等

首先,我看了Zend_Search_Lucene,但从中我意识到它在中文方面有问题(

现在我在考虑Sphinx。它支持英文和俄文词干。我不知道中文有多好,我也不知道为它添加支持会有多困难。这是一线希望,但作为一个没有经验的Sphinx用户,我不认为我理解那里说的话


所以

有没有人有过这种“语言不可知论”搜索的经验,可以和我分享

你能给我一些东西来测试搜索吗?作为一个母语为俄语的人,我有一些基本的英语知识,我可以自己测试俄语和英语搜索,但我甚至不知道这张中文图片的哪些部分是单词。请给我一些中文字符串,将它们放入索引和一些具有预期结果的查询

来自Xapian文档:

Xapian使用雪球词干分析算法。目前,这些算法支持丹麦语、荷兰语、英语、芬兰语、法语、德语、匈牙利语、意大利语、挪威语、葡萄牙语、罗马尼亚语、俄语、西班牙语、瑞典语和土耳其语。还实现了Lovins的英语词干分析、Porter的原始英语词干分析、Kraij Pohlmann荷兰词干分析和德国词干分析器的一种变体,它使umlauts标准化

或者世界上的一些语言,例如汉语,词干的概念是不适用的,但是对于印欧语系的许多语言来说,它肯定是有意义的


谷歌用户搜索还不够满足您的需求吗?您到底不喜欢什么?

中文或日文等语言中的表意字符需要两个终端字符位置,因此您在使用UTF8时会遇到问题,应该改用UTF16


除此之外,任何支持UTF16和您的需求(如词干分析)的搜索引擎如果你喜欢Sphinx,那就去吧!

我正在维护一个基于Sphinx的开源项目,以提供更好的中文支持。你可以看看。我对俄语不太了解,但如果俄语单词是空格分隔的,那就没问题了。如果你有任何问题,请给我留言。

我不能在中文中使用它情况:(哦!谢谢你的评论!Shinx不支持中文词法,是吗?当然支持!只要你在整个应用程序中与编码保持一致,它就可以处理所有事情。看看这里:我尝试在我的应用程序中使用一些文本,就像英文文本一样。这些文本已保存并正确显示。也许我意识到你的话是错的?你还在使用UTF8还是整个应用程序都改成UTF16了?如果你还在使用UTF8,那么可能会出现不一致的情况……不,我还没有改变。但我会去做。你能告诉我在将UTF8改成UTF16的过程中是否有潜在的问题吗?我一生中都没有使用过UTF16。那就是nks!这只是文档的直接副本-中文的问题是如何将文本分割到数据库中-而不做一些真正愚蠢的事情,比如在字符之间插入空格。